在PDO中捕获 SQL 语句错误有三种方案可以选择,根据自己的开发项目和实际情况选择适合的方案来捕获SQL 语句的错误!大理石平台价格表
那么我们在前的文章《PDO中执行SQL语句的三种方法》中介绍PDO中执行SQL语句的三种方法,以及在以前的三篇文章《PDO中获取结果集之fetch()方法详解》《PDO中获取结果集之fetchAll()方法详解》《PDO中获取结果集之fetchColumn()方法详解》中介绍了关于PDO中获取结果集的三种方法,那么我们今天给大家介绍关于PDO中捕获SQL语句中的错误的几种方法~!
今天给大家介绍使用默认模式-PDO::ERRMODE_SILENT。
在默认模式中设置 PDOStatement 对象的 errorCode数据,但是不进行其他的任何操作。
下面我们用实例给大家介绍默认模式-PDO::ERRMODE_SILENT的具体使用,具体步骤如下:
首先创建一个php文件,添加表单,将表单元素提交到本页面,通过 PDO 连接MySQL数据库,通过预处理语句的 prepare()和execute()方法执行 INSERT 添加操作,向数据表中添加数据,并且设置 PDOStatement对象的 errorCode属性,来检测代码中的错误,具体代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
<form action= "1.php" name= "form1" method= "post" >
用户名:<input type= "text" name= "username" >
密码: <input type= "password" name= "password" >
<input type= "submit" name= "Submit" value= "提交" >
</form>
<?php
header( "Content-Type:text/html; charset=utf-8" );
if ( $_POST [ 'username' ]&& $_POST [ 'password' ]!= "" ){
$name = $_POST [ 'username' ];
$password = $_POST [ 'password' ];
$dbms = "mysql" ;
$dbName = "php_cn" ;
$user = "root" ;
$pwd = "root" ;
$host = "localhost" ;
$dsn = "$dbms:host=$host;dbname=$dbName" ;
$pdo = new PDO( $dsn , $user , $pwd );
$query = "insert into `user_12`(username,password) VALUES ('$name','$password')" ;
$res = $pdo ->prepare( $query );
$res ->execute();
$code = $res ->errorCode();
if ( empty ( $code )){
echo "数据添加成功" ;
} else {
echo "数据错误:<br>" ;
echo 'SQL Query:' . $query ;
echo '<pre>' ;
var_dump( $res ->errorInfo());
echo '</pre>' ;
}
}
?>
|
https://www.bzddrive.com/cctlcn/