tain198127 发表于 2015-7-2 16:42:00

求助关于CI中捕获SQL异常的问题

数据库:MYSQL
CI3.0

描述:注册的时候,不想多查一次表,所以直接采用db->insert的方式,想通过捕获异常的方式来知道是否已经注册过了。
找了几种方法,都不是很好。
方法1:在database.php文件中修改debug=false;
虽然不抛500的错误了,但是我还是捕获不到。

方法2:扩展CI_Exception。
目前来说比较好的解决方法了,但是粒度太粗了,我不想所有的DB_ERROR都通过这种方式处理。

方法3:多写一步SELECT
貌似在MYSQL中只有在SP中才能用IF ELSE语法,所以只能在外面写,那就必须连续调2次数据库。

难道就没有别的方法了么?

iserich 发表于 2015-7-2 16:59:12

$this->db->insert_id()
页: [1]
查看完整版本: 求助关于CI中捕获SQL异常的问题