我有一个查询希望看到SQL错误报告
INSERT INTO table (id) VALUES (5);
表已经有这样的ID的记录。所以查询失败。
我的mysqli类扩展看起来是这样的:
<?php
class my_mysqli extends mysqli {
function __construct($config) {
$this->DB = parent::__construct($config['HOST'], $config['USER'], $config['PASS'], $config['DB']);
}
function exe($sql) {
if (! $st = $this->DB->prepare($sql)) {
trigger_error($st->error); // this one isn't triggered
}
if (! $st->execute()) {
trigger_error($st->error); // this one is triggered
}
// ..then parse results and close
}
}
右$mysqli->execute()
我登录$mysqli->error
,并得到后:
*未知事先准备好的声明处理器(0)给mysqld_stmt_execute *
但我希望看到SQL错误,而不是:
重复条目'5'为键“PRIMARY”
显示您的实际代码。看起来你没有正确地准备一个陈述,然后以某种方式错误地执行它。 – 2013-05-13 21:19:38