php连接数据库异常处理,当try中语句发生异常后,最终还要执行try剩下的语句);
方式一:try-catch自带
try{
...
}catch(PDOEXception $e)
}
{
echo $e->getMessage();
}
方式二:(一般用于if-else)
$数据库连接对象->errorCode(); 错误类型
$数据库连接对象->errorInfo(); 错误详细信息
方式三:(一般用于try-catch的try中)
//异常弹出警告,程序不会中断
$数据库连接对象->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);
// 异常弹出致命错误,中断程序
$数据库连接对象->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
代码示例:
<?php
try{
$pdo=new PDO('mysql:host=localhost;dbname=day2db','root','dyl123');
//异常弹出警告,程序不会中断
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);
// 异常弹出致命错误,中断程序
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
}catch(PDOEXception $e)
{
echo $e->getMessage();
}
$pdo->exec('set names utf8');
$sql="update userinfo1 set password='222' where userName='kate'";
if($pdo->exec($sql))
{
echo "成功";
}else{
// echo $pdo->errorCode();
// echo $pdo->errorInfo();
echo '失败';
}
?>