PDO

'PDO
'是数据访问抽象层
'用mysqli类找到mysqli驱动根据驱动操作mysqli数据库
'其他类找到sqlserver驱动根据驱动操作sqlserve数据库
'PDO 访问其他数据库

PDO的用法

1.操作其他数据库

 1 //1,操作其他数据库
 2 //1.造PDO对象

3 $dsn = "mysql:dbname= asdadads; host = localhost";//数据源 4 5 $pdo = new PDO($dsn,"root","456"); 6 //写sql语句 7 $sql = "select * from users"; 8 $sql ="insert into users value('周结论','4567')"; 9 //执行,返回的是PDOStastement query 执行查询 esec执行其他语句 10 $attr = $pdo->query($sql); 11 $sttr = $pdo->esec($sql); 12 $arr= $attr->fecthALL(PDO::FETCH_BOTH);//fecthall能查到所有数据

2.事务功能

//2.事务功能
//事务:用事务控制语句同时成功同事失败 失败时带有回滚功能滨能抓住错误:执行过程中出现错误 程序回到原点
$dsn = "mysql:dbname=asdadads; host= localhost";
$pdo = new PDO($dsn,"root", "456");

//设置异常模式
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ATTR_EMULATE_EXCEPTION0);

try {
//先开启事务,那开启事务哪里就是回滚的点
$pdo->beginTransaction();


$sql1 = "insert into users values('衬衫','6789')";
$sql2 = "insert into uxers values('周星驰','8989')";
$pdo->exec($sql1);
$pdo->exec($sql2);
//提交
$pdo->commit();// 把上面的数据一并提交      配合$pdo->beginTransaction();使用  有开启就有提交


}
catch(EXCEPTION $e)// 异常  异常对象
{
    //抓住try中出现的错误,并且处理
    $e->getMessage();//获取异常信息
    //回滚
    $pdo->rollBack();//有异常走回滚程序
    
    }
    //final()//配合try final最终执行的 无论以上try中有没有错误,都会执行,方关闭链接用

3.防止SQL注入攻击

原文地址:https://www.cnblogs.com/gdbaby/p/6236512.html