pdo-mysql_PHP PDO-MySQL快速上手

PHP在PHP6之后将mysql_connect等旧的数据库操作将会被废弃,取而代之的是更加强大PDO来操作数据库

PDO是PHP5新增的

(一)启用PDO

在php.ini中找到 extension=php_pdo_mysql.dll 将这行前面的“ ; ”去掉即启用了 PHP MySQL的pdo扩展

重启Apache

(二)创建PDO对象

如果使用了自动加载 function __autoload(){} 则需要使用命名控件来防止自动加载去加载PDO类

use PDO;

$pdo=new PDO(“mysql:host=localhost;dbname=test”,‘root’,”);

使用以上代码获取PDO对象

长连接PDO对象获取方式:

new PDO(“mysql:host=localhost;dbname=test”,‘root’,”,array(PDO::ATTR_PERSISTENT => true));

(三)使用PDO对象进行增删查改

(1)query查询 适用于执行 select语句

$pdo->query(“select * from test”);

返回一个二维数组

(2)exec查询 适用于执行insert update delete语句

$pdo->exec(“delete from test where id=1”);

返回受影响行数,如果是insert 则返回auto_increment的值

(四)使用PDO进行参数绑定查询

(1)使用prepare方法获取PDO语句执行器

$executor=$pdo->prepare(“select * from test where id=?”);

(2)执行select查询 并获取查询结果

$id=1;

$executor=$pdo->prepare(“select * from test where id=?”);

$executor->bindParam(1,$id);//绑定参数到 第一个占位符 占位符索引从1开始

$executor=$pdo->execute();//执行语句

$result=$pdo->fetchALL();//关联数组+数字索引形式返回结果

如果想返回关联数组形式的结果则使用fetchALL(PDO::FETCH_ASSOC);

纯数字索引PDO::FETCH_NUM

对象索引FETCH_OBJ

默认的关联+数字索引FETCH_BOTH

使用bindParam来绑定参数 第二个值只能传入变量,如果要传入字面常量需要使用bindValue

execute()方法执行成功返回true 失败返回false

(3)执行insert查询 并获取auto_increment值

$executor=$pdo->prepare(“insert into test(name) values(?)”);

$executor=$pdo->bindValue(1,’黑皮’);

$executor->execute();

$insertId=$pdo->lastInsertId();//这里通过pdo对象来获取最后插入的id

PS:该insertId为本连接插入的最新auto_increment值 其他连接对数据库的操作不影响该次连接获取auto_increment的值

(3) 执行update、delete查询 并返回受影响的行数

$executor=$pdo->prepare(“update test set name=? where id=?”);

$executor->bindValue(1,”我叫黑皮”);

$executor->bindValue(2,1);

$executor->execute();

$rowCount=$executor->rowCount();//使用executor执行器获取此次查询受影响的行数

delete和update一样的 我就不写了~~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值