yii2之数据库命令createcommand常用用法

yii2.0 / 2498人浏览 / 0人评论

通过createCommand操作数据库,执行Sql,更新,新增、删除数据操作。

Yii2链接数据库

'db' => [
    'class' => \yii\db\Connection::class,
    'dsn' => 'mysql:host=compose-mysql;dbname=yii2advanced',
    'username' => 'root',
    'password' => '123456',
    'charset' => 'utf8',
],

createCommand操作数据库

通过createCommand操作数据库,执行Sql,更新,新增、删除数据操作。

try {
    $sql = 'select * from user where id > 0;';
    $obj = Yii::$app;
    $result = $obj->db->createCommand($sql)->execute();
    var_dump($result);
    $result = $obj->db->createCommand($sql)->query();//返回DataReader对象,并返回查询结果集
    var_dump($result);
    $result = $obj->db->createCommand($sql)->queryOne();//返回结果集的第一行数据
    var_dump($result);
    $result = $obj->db->createCommand($sql)->queryAll();//查询所有行数据
    var_dump($result);
    $result = $obj->db->createCommand($sql)->queryColumn();//返回结果集每一行的第一列元素
    var_dump($result);
    $result = $obj->db->createCommand($sql)->queryScalar();//返回结果集中第一行第一列的值(如成功返回该值,失败则返回false)
    var_dump($result);
    $result = $obj->db->createCommand()->update('user', array('username'=> 'fxzbcn',),"id=:id",array(':id'=>1))->execute();//更新一条记录
    var_dump($result);
    $result = $obj->db->createCommand()->insert('user', array('username'=>time()))->execute();//插入一条记录
    var_dump($result);
    $id = $obj->db->getLastInsertID();//返回一条新增记录自增ID
    var_dump($id);
    $result = $obj->db->createCommand()->delete('user',"id=:id",array(':id'=>$id))->execute();//删除一条记录
    var_dump($result);
} catch(\Exception $e) {
    var_dump($e->getMessage());
}

输出结果集


int(9)
object(yii\db\DataReader)#86 (4) {
  ["_statement":"yii\db\DataReader":private]=>
  object(PDOStatement)#85 (1) {
    ["queryString"]=>
    string(32) "select * from user where id > 0;"
  }
  ["_closed":"yii\db\DataReader":private]=>
  bool(false)
  ["_row":"yii\db\DataReader":private]=>
  NULL
  ["_index":"yii\db\DataReader":private]=>
  int(-1)
}
array(2) {
  ["id"]=>
  string(1) "1"
  ["username"]=>
  string(10) "1671633429"
}
array(9) {
  [0]=>
  array(2) {
    ["id"]=>
    string(1) "1"
    ["username"]=>
    string(10) "1671633429"
  }
  [1]=>
  array(2) {
    ["id"]=>
    string(1) "2"
    ["username"]=>
    string(10) "1671633429"
  }
  [2]=>
  array(2) {
    ["id"]=>
    string(1) "3"
    ["username"]=>
    string(10) "1671633429"
  }
  [3]=>
  array(2) {
    ["id"]=>
    string(1) "4"
    ["username"]=>
    string(10) "1671633429"
  }
  [4]=>
  array(2) {
    ["id"]=>
    string(1) "5"
    ["username"]=>
    string(10) "1671633429"
  }
  [5]=>
  array(2) {
    ["id"]=>
    string(1) "6"
    ["username"]=>
    string(10) "1671633429"
  }
  [6]=>
  array(2) {
    ["id"]=>
    string(1) "7"
    ["username"]=>
    string(10) "1671633429"
  }
  [7]=>
  array(2) {
    ["id"]=>
    string(1) "8"
    ["username"]=>
    string(10) "1671633548"
  }
  [8]=>
  array(2) {
    ["id"]=>
    string(1) "9"
    ["username"]=>
    string(10) "1671633560"
  }
}
array(9) {
  [0]=>
  string(1) "1"
  [1]=>
  string(1) "2"
  [2]=>
  string(1) "3"
  [3]=>
  string(1) "4"
  [4]=>
  string(1) "5"
  [5]=>
  string(1) "6"
  [6]=>
  string(1) "7"
  [7]=>
  string(1) "8"
  [8]=>
  string(1) "9"
}
string(1) "1"
int(1)
int(1)
string(2) "11"
int(1)

转载注明:

扩展查找

0 条评论

还没有人发表评论

发表评论 取消回复

记住我的信息,方便下次评论
有人回复时邮件通知我