$connection = Yii::app()->db; //連接
//查找
$sql = "SELECT * FROM `tbl_user` ORDER BY id DESC";
$command = $connection->createCommand($sql);
$result = $command->queryAll();
print_r($result);
//添加
$sql = " INSERT INTO `tbl_user` (`username`, `password`, `email`) VALUES ('test', 'test', '[email protected]') ";
$command=$connection->createCommand($sql);
print_r($command->execute());
//添加 返回自增id
$command1 = $connection->createCommand("SELECT last_insert_id()");
$result = $command1->queryAll();
//常用函數
(1)如果你執行的SQL語句有返回結果集: 例如SELECT。通常用query開頭的系列函數:
$dataReader=$command->query(); // 執行一個 SQL 查詢
$rows=$command->queryAll(); // 查詢並返回結果中的所有行
$row=$command->queryRow(); // 查詢並返回結果中的第一行
$column=$command->queryColumn(); // 查詢並返回結果中的第一列
$value=$command->queryScalar(); // 查詢並返回結果中第一行的第一個字
(2)你執行的SQL語句返回的不是結果集,只是狀態值,例如:INSERT ,UPDATE,DELETE.則用execute()
$this->command->execute();
//使用事務的一種常見情形:CDbTransaction
$transaction = $connection->beginTransaction();
try{
$connection->createCommand($sql1)->execute();
$connection->createCommand($sql2)->execute();
.........
$transaction->commit();
}
catch(Exception $e){ // 如果有一條查詢失敗,則會拋出異常
$transaction->rollBack();
}