首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何处理Php中MySQL的外键错误?

如何处理Php中MySQL的外键错误?
EN

Stack Overflow用户
提问于 2013-08-30 06:00:38
回答 1查看 2.9K关注 0票数 5

我在MySQL里测试外键。目的是防止id进入table2,这在table1中是不存在的。我本来希望使用foreign keys只会导致一行没有被插入,但它似乎抛出了这个巨大的错误。我如何在PHP中处理这个问题?是否有一种方法可以使MySQL简单地不插入行而不返回返回的行?

致命错误:带有消息'SQLSTATE23000:完整性约束违反: 1452不能添加或更新子行:外键约束失败(wp-db.borrowed,constraint borrowed_ibfk_1 Integrity (employeeid)在更新级联上的删除级联引用employee (id) )的严重错误。 堆栈跟踪: #0 C:\web\apache\htdocs\dev\foreign.php(10):PDOStatement->execute() #1 {main}在第10行的C:\web\apache\htdocs\dev\foreign.php中抛出

EN

回答 1

Stack Overflow用户

发布于 2013-08-30 06:09:23

使用试接

代码语言:javascript
复制
try { 
    $pdo->exec ("QUERY WITH SYNTAX ERROR"); 
} catch (PDOException $e) { 
    if ($e->getCode() == '23000') 
        echo "Syntax Error: ".$e->getMessage(); 
}

读取PDOStatement::errorCode

取自返回代码列表

SQL-92标准定义了一组SQLSTATE返回代码。SQLSTATE定义为一个五个字符的字符串,其中最左边的两个字符定义错误类,其余三个字符定义错误子类。一些数据库供应商可能会扩展这些返回代码;从数字5到9开始的类和字母i到Z都是为特定于实现的扩展保留的。可以通过getSQLState()SQLException方法检索特定JDBC操作的SQLSTATE代码。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18526019

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档