Rootop 服务器运维与web架构

PHP5中使用PDO连接数据库

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

作者:Venus

服务器运维与性能优化

评论已关闭。