【问题标题】:Mysql Error HandlingMysql错误处理
【发布时间】:2011-06-26 19:59:36
【问题描述】:

当我们只知道错误的代码号时,有没有办法得到mysql错误字符串消息,由mysql_errno()命令获取?

【问题讨论】:

    标签: php mysql error-handling


    【解决方案1】:

    您可以获得有关触发哪种错误的信息(例如:server error messages)。但是您不能将错误代码与详细错误消息相关联。所以映射会给你发生的错误类型,但是:

    mysql_error()
    

    除了mysql_errno之外,总会给出更多的信息。

    【讨论】:

    • 我明白了,至少我能以某种方式得到类型吗?
    • 您可以通过将错误代码反向映射到您的 mysql 发行版的文件 share/errmsg.txt 中的关联字符串模板来获取类型。如果您有相关的时间戳,另一种选择是评估日志。
    【解决方案2】:

    可能存在服务器或客户端错误。

    请看这里:http://dev.mysql.com/doc/refman/5.0/en/error-handling.html

    【讨论】:

    • 我的意思是服务器错误ofcourse。但是有没有按错误号返回字符串消息的命令呢?
    • 我不知道这个命令。但是您可以将它们放在一个表中并根据错误号。拿绳子。也可以在这里查看:briandunning.com/error-codes/?source=MySQL
    【解决方案3】:

    命令mysql_errno() 不只是返回一个数字,在大多数情况下,它与mysql_error 一起使用。您可以使用mysql_error 返回之前 MySQL 操作的错误消息文本。

    如果遇到不返回某些文本的情况,请参阅 Mysql 文档中的此部分:http://dev.mysql.com/doc/refman/5.5/en/error-handling.html

    【讨论】:

    • 所以我只能得到最后发生的错误,而不是之前某个时间发生的错误字符串,我只知道这个错误的编号?
    • 没错。对于那个 php 将需要一个库来处理所有 mysql 错误,而且 - 至少从我的角度来看 - 这不是 php 的目的。
    猜你喜欢
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-11
    • 1970-01-01
    相关资源
    最近更新 更多