本文共 2031 字,大约阅读时间需要 6 分钟。
一 代码
使用异常模式——PDO::ERRMODE_EXCEPTION捕获SQL中的错误
$dbms='mysql'; //数据库类型 ,对于开发者来说,使用不同的数据库,只要改这个,不用记住那么多的函数 $host='localhost'; //数据库主机名 $dbName='db_database15'; //使用的数据库 $user='root'; //数据库连接用户名 $pass='root'; //对应的密码 $dsn="$dbms:host=$host;dbname=$dbName"; try { $pdo = new PDO($dsn, $user, $pass); //初始化一个PDO对象,就是创建了数据库连接对象$pdo $query="select * from tb_pdo_mysql limit 5";//定义SQL语句 $result=$pdo->prepare($query);//准备查询语句 $result->execute();//执行查询语句,并返回结果集 while($res=$result->fetch(PDO::FETCH_ASSOC)){//while循环输出查询结果集,并且设置结果集的为关联索引 ?> | ||||||
<?php echo $res['id'];?> | <?php echo $res['pdo_type'];?> | <?php echo $res['database_name'];?> | <?php echo $res['dates'];?> |
}
} catch (PDOException $e) {
die ("Error!: " . $e->getMessage() . "
");}
?>
header ( "Content-type: text/html; charset=utf-8" ); //设置文件编码格式
if($_GET['conn_id']!=""){
$dbms='mysql'; //数据库类型 ,对于开发者来说,使用不同的数据库,只要改这个,不用记住那么多的函数
$host='localhost'; //数据库主机名
$dbName='db_database15'; //使用的数据库
$user='root'; //数据库连接用户名
$pass='root'; //对应的密码
$dsn="$dbms:host=$host;dbname=$dbName";
try {
$pdo = new PDO($dsn, $user, $pass); //初始化一个PDO对象,就是创建了数据库连接对象$pdo
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
$query="delete from tb_pdo_mysqls where Id=:id";
$result=$pdo->prepare($query);//预准备语句
$result->bindParam(':id',$_GET['conn_id']);//绑定更新的数据
$result->execute();
} catch (PDOException $e) {
echo 'PDO Exception Caught.';
echo 'Error with the database:
';echo 'SQL Query: '.$query;
echo '
';
echo "Error: " . $e->getMessage(). "
";echo "Code: " . $e->getCode(). "
";echo "File: " . $e->getFile(). "
";echo "Line: " . $e->getLine(). "
";echo "Trace: " . $e->getTraceAsString(). "
";echo '
';}
}
?>
二 运行结果
PDO Exception Caught.Error with the database:SQL Query: delete from tb_pdo_mysqls where Id=:id
Error: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'db_database15.tb_pdo_mysqls' doesn't existCode: 42S02File: D:\AppServ\www\test\15\9\delete.phpLine: 16Trace: #0 D:\AppServ\www\test\15\9\delete.php(16): PDOStatement->execute()
#1 {main}
转载地址:http://bfnzx.baihongyu.com/