跟着百度学PHP[14]-PDO的错误处理模式&PDO执行SQL
2017-02-21 16:55
627 查看
我们在使用PDO去执行sql语句的时候并不会报错.如下案例所示:
demo
PDO执行sql语句:
其实上面的案例当中已经涉及,就是exec,但还有一个为:query。
二者的差异:
Exec用来处理非结果集的 比如insert update create等 且该还返回影响行数.
Query 用来处理结果集的 比如select desc show等.
但其实这两种都不是常用的语句。因为还有比query和exec更好的。详情可看:http://www.cnblogs.com/xishaonian/p/6428744.html
<?php try { //$pdo = new pdo("mysql:host=主机;port=端口;dbname=数据库","数据库名","密码"); $pdo = new pdo("mysql:host=localhost;port=3306;dbname=test","root",""); } catch (PDOException $e) { echo $e->getmessage(); } echo $pdo->exec("insert into aaaa values(aaa)");//此处sql语句故意写错。 ?>
<?php try{ $pdo = new pdo("mysql:host=localhost;port=3306;dbname=test","root",""); }catch(PDOException $e){ echo $e->getmessage(); } echo "PDO对象创建成功.<br />"; $sql = $pdo -> exec("insert inssssto users(gold,user,password) values(7,'hello','world')"); if(!$sql){ echo $pdo->errorcode(); echo "<br />"; print_r($pdo->errorinfo()); exit; } echo "sql语句执行成功。"; ?>
demo
PDO执行sql语句:
其实上面的案例当中已经涉及,就是exec,但还有一个为:query。
二者的差异:
Exec用来处理非结果集的 比如insert update create等 且该还返回影响行数.
Query 用来处理结果集的 比如select desc show等.
但其实这两种都不是常用的语句。因为还有比query和exec更好的。详情可看:http://www.cnblogs.com/xishaonian/p/6428744.html
相关文章推荐
- 跟着百度学PHP[14]-PDO之Mysql的事务处理2
- 跟着百度学PHP[14]-PDO之Mysql的事务处理1
- 跟着百度学PHP[14]-PDO的预处理语句2
- PHP PDO的错误处理模式
- 跟着百度学PHP[14]-初识PDO数据库抽象层
- 跟着百度学PHP[14]-PDO的预处理语句1
- 跟着百度学PHP[14]-PDO-优化驱动
- 使用Oracle SQL Developer连接数据库时,提示“执行请求的操作时遇到错误:IO 错误: The Network Adapter could not establish”,不知如何处理
- linxu下php使用pdo-dblib连接mssql报错解决方法 错误信息:SQLSTATE[01002]Adaptive Server connection failed (severity 9)
- 解决在phpmyadmin中执行sql语句出现的错误:Unknown storage engine 'InnoDB'
- c++构造函数中发生错误,如何处理? http://www.opengpu.org/forum.php?mod=viewthread&tid=2918
- php pdo错误:SQLSTATE[HY093]: Invalid parameter number: parameter was not defined
- PHP中PDO的错误处理
- PHP中PDO的错误处理
- 恢复数据库报错,SQL3012C 发生系统错误(原因码 = "")。无法处理后续的 SQL 语句。 SQLSTATE=58005
- PHP + mysql 遇到Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error
- PL\SQL 打开时出现"动态执行表不可访问,本会话的自动统计被禁止"错误解决
- 解决在phpmyadmin中执行sql语句出现的错误:Unknown storage engine 'InnoDB'
- [Oracle]查看SQL的执行计划 - AUTOTRACE,遇到错误ORA-00904: "OTHER_TAG": 标识符无效
- 恢复数据库报错,SQL3012C 发生系统错误(原因码 = "")。无法处理后续的 SQL 语句。 SQLSTATE=58005