标签:
PDO是别人写的“数据库操作工具类”!——它可以代替我们自己写的MySQLDB.class.php.
使用它,类似这样:
$pdo = new PDO(连接信息);
$sql = “select * from .....”;
$result = $pdo->query($sql); //返回一个“pdo结果集”;
$sql = “delete / update / insert ........ ”;
$result2 = $pdo->exec($sql); //返回一个真假值;
手册可以找到:
函数参考》数据库扩展》数据库抽象层》PDO;
具体应用的时候,其实,其中有这样的一个关系:
<?php
function getFruit($conn) {
$sql = ‘SELECT name, color, calories FROM fruit ORDER BY name‘;
foreach ($conn->query($sql) as $row) {
print $row[‘name‘] . "\t";
print $row[‘color‘] . "\t";
print $row[‘calories‘] . "\n";
}
}
?>
可以简单理解为:适应面向对象语法的处理错误的一种语法结构。如下所示:
try{
在这里,可以执行“可能出错”的语句(多条也可以);
一旦发生错误,就会终止当前范围的后续程序执行,
而立即跳转到catch部分——处理错误!
}
catch( Exception $e ){
//一旦发生错误,就会进入这里,此时,并会生成一个“错误对象”;
//该错误对象,就是系统类Exception的一个实例:它包含了错误信息。
}
pdo要使用异常模式,就得专门设置(因为其默认是静默模式):
Example #1 创建 PDO 实例并设置错误模式
<?php
$dsn = ‘mysql:dbname=testdb;host=127.0.0.1‘;
$user = ‘dbuser‘;
$password = ‘dbpass‘;
try {
$dbh = new PDO($dsn, $user, $password);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
echo ‘Connection failed: ‘ . $e->getMessage();
}
?>
$result = $pdo->query(“返回结果集的sql语句”); //对比最原始的函数: mysql_query(“select ..... “)
结果:
成功:就是一个pdo结果集对象;
失败:false;
$result = $pdo->exec(“增删改的sql语句”);
结果: true(表示成功),false(表示失败);
$pdo = null; //销毁该对象;
其他操作:
$pdo->begintrsaction();
$pdo->exec(“insert ....”);
$pdo->exec(“delete ....”);
$v1 = $pdo->intransaction(); //结果是true
标签:
原文地址:http://www.cnblogs.com/vitalizer/p/5521082.html