简体   繁体   中英

How to select table user in yii2?

i have a trouble, when select table user in yii2 , data no show up

用户表

结果

 $sqlGetuser = "select * from user ";
                            $sqlquery = Yii::$app->db->createCommand($sqlGetuser)->query();
                            foreach($sqlquery as $row){
                                // echo $row;
                                // echo "saya";
                                echo $row['username'];
                            }

The error is in this line:

$sqlquery = Yii::$app->db->createCommand($sqlGetuser)->query();

query() returns yii\\db\\DataReader . To return array of rows use queryAll() :

$rows = Yii::$app->db->createCommand($sqlGetuser)->queryAll();

If you want to use query() , you need to read data differently:

$command = $connection->createCommand('SELECT * FROM "user"');
$reader = $command->query();

while ($row = $reader->read()) {
    $rows[] = $row;
}

// equivalent to:
foreach ($reader as $row) {
    $rows[] = $row;
}

// equivalent to:
$rows = $reader->readAll();

See more in official docs .

Also quote table name as adviced since it's reserved word.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM