php部分---PDO;

Posted 业务高于技术

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php部分---PDO;相关的知识,希望对你有一定的参考价值。

PDO
数据访问抽象层

PDO的三个功能:

1.操作其它数据库
2.事务功能
3.防止SQL注入攻击

操作数据库:

造PDO对象

//$dsn = "mysql:dbname=mydb;host=localhost"; //数据源
//$pdo = new PDO($dsn,"root","123");

 

//写SQL语句

//$sql = "select * from nation";
//$sql = "insert into nation values(‘n077‘,‘数据‘)";

 

//执行,返回的是PDOStatement对象

//$a = $pdo->query($sql); //执行查询
//$a = $pdo->exec($sql); //执行其他语句

//var_dump($a);

//$arr = $attr->fetchAll(PDO::FETCH_BOTH);//返回索引和关联数组
$arr = $attr->fetch(PDO::FETCH_ASSOC);  //返回关联数组

//var_dump($arr);

 


//事务功能
//事务:能够控制语句同时成功同时失败,失败时可以回滚

$dsn = "mysql:dbname=mydb;host=localhost";
$pdo = new PDO($dsn,"root","123");

 

//设置异常模式

$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);

 

try
{
//开启事务
$pdo ->beginTransaction(); //回滚点即若有错误,回滚到这里

$sql1 = "insert into nation values(‘n080‘,‘是删‘)";
$sql2 = "insert into nation values(‘n070‘,‘好几款‘)";
$sql3 = "insert into nation values(‘n075‘,‘好几款‘)";

$pdo->exec($sql1);
$pdo->exec($sql2);
$pdo->exec($sql3);

//提交
$pdo->commit();
}
catch(Exception $e)
{
//抓住try里面出现的错误,并且处理
//echo $e->getMessage(); //获取异常信息

//设置pdo回滚
$pdo->rollBack();
}
//final()
//{
//最终执行,无论以上try代码有没有出错,都会执行
//}

 

 

?>

以上是关于php部分---PDO;的主要内容,如果未能解决你的问题,请参考以下文章

php部分---PDO;

如何在 PHP PDO 中使用 UDF

转载 pdo

PDO:事务不回滚?

php [php:PDO transaction]示例代码。 #PHP

php课程---php使用PDO方法详解(转)