CI框架中pdo的使用方法

1、配置文件修改

application/config文件夹下的database.php文件

$db['default'] = array(
    'dsn'    => 'mysql:dbname=ci_ecshop;host=127.0.0.1',
    'username' => 'root',
    'password' => '',

    'dbdriver' => 'pdo',


2、查询操作

$sql = 'select * from aaa where id = :id';
$sql_array = array(
	':id' => 1 
);
$stmt = <span style="color:#FF0000;">$this->db->conn_id</span>->prepare($sql);//<span style="color:#FF6600;">$this->db->conn_id 是一个pdo对象</span>
$stmt->execute($sql_array);
$arr_user = $stmt->fetchAll(PDO::FETCH_ASSOC); //返回一个包含结果集中所有行的数组,相当于mysql中的result_array
$str_user = $stmt->fetch(PDO::FETCH_ASSOC); //从结果集中获取下一行,相当于mysql中的row_array

判断查询是否成功:
$stmt->execute($sql_array); //这句语句会返回true或者false,代表查询是否成功


3、insert 、update、delete  等操作
除了sql语句语法不同,查询的方法是一样的
$sql = "update aaa SET status = -1 WHERE id= :id";
$sql = "INSERT INTO aaa(`id`) VALUES ( :id)";
$sql = "delete from aaa where id= :id";
$sql_array = array(
	':id' => 1 
);
$stmt = $this->db->conn_id->prepare($sql);
$stmt->execute($sql_array);

判断查询是否成功:

$stmt->rowCount();
if($stmt->rowCount()>0){
 //查询成功
}else{
 //查询失败
}

4、另外,insert的时候,有时候需要返回insert_id

pdo中的写法是 $stmt->lastInsertId();



发布了326 篇原创文章 · 获赞 28 · 访问量 80万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章