我有以下代码:
$db = new mysqli('localhost', 'xxx', 'xxx', 'dbname');
if($db->connect_errno > 0){
die('Unable to connect to database [' . $db->connect_error . ']');
}
try
{
$db->begin_transaction();
$db->query($q_insert_custom);
$db->commit();
$error_message = '';
}
catch (Exception $e)
{
$db->rollback();
$error_message = $e->getMessage()." **** LINE: ".$e->getLine();
}
echo $error_message;
$q_insert_custom
中存在一个问题,即它尝试插入行但缺少必填字段。当您在MySQL Workbench中运行查询时,我收到有关查询的错误以及它是如何错过该字段的。但是,当我通过PHP运行它时,没有被异常处理捕获,看起来好像查询运行得很好。
我做错了什么?当MySQL抛出有关查询的错误时,如何捕获?
答案 0 :(得分:0)
查找MySQL错误的一种快捷方法是检查Sub AddHardware()
Range("b5:m6").Copy Sheets("MTO").Range("B" & rows.Count).End(xlUp).Offset(1, 0)
End Sub
中是否有消息。然后,如果需要,你可以抛出它$db->error
。