PDO(PHP Data Object) 是PHP 5 中加入的东西,是PHP 5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的连接和处理,什么 php_mysql.dll、php_pgsql.dll、php_mssql.dll、php_sqlite.dll等等。
PHP6中也将默认使用PDO的方式连接,mysql扩展将被作为辅助。
如何使用PDO连接mysql:
(1)短连接:
new PDO("mysql:host=localhost;dbname=php100","root","123456");
参数为: “数据库类型:地址;数据库名称”,” 用户名”,” 密码”
(2)长连接:
如果需要数据库长连接,需要在最后加一个参数:
array(PDO::ATTR_PERSISTENT => true)
new PDO("mysql:host=localhost;dbname=php100", 'root', '123456', array(PDO::ATTR_PERSISTENT => true));
PDO 常用方法及其使用:
PDO::query() 主要是用于有记录结果返回的操作,特别是SELECT操作
PDO::exec() 主要是针对没有结果集合返回的操作,如INSERT、UPDATE等操作
PDO::lastInsertId() 返回上次插入操作,主键列类型是自增的最后的自增ID
PDOStatement::fetch() 是用来获取一条记录
PDOStatement::fetchAll() 是获取所有记录集合
实例:
表t1,字段id,name,content 。id为自增
<?php $pdo = new PDO('mysql:host=localhost;dbname=test', 'root', 'root',array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'")); // 插入操作 $pdo -> exec("INSERT INTO t1 (`name`,`content`) VALUES ('root','北京');"); // insert 属于没有结果集合返回用 exec $rs = $pdo -> lastInsertid(); // 通过判断返回的插入id来确定是否插入成功 失败的话会返回字符串0 if ($rs) { echo "成功!" . "插入的数据所在id为:$rs"; } else { echo "插入失败"; } // 查询操作 有结果集合返回 用query 返回一个数组 $rs = $pdo -> query("SELECT * FROM t1;"); $row = $rs -> fetchall(); var_dump($row);
<?php $pdo = new PDO('mysql:host=localhost;dbname=test', 'root', 'root',array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'")); // 查询操作 有结果集合返回 用query 返回一个数组 $rs = $pdo -> query("SELECT * FROM t1;"); $row = $rs -> fetchall(); var_dump($row);
原创文章,转载请注明。本文链接地址: https://www.rootop.org/pages/3492.html