我使用libmysql.dll库从第三方应用程序(metatrader)连接到我的数据库。
我设法连接起来,一切都进行得很顺利。我使用mysql_real_connect和mysql_errno来连接和捕获可能的错误。我在SQL模式下使用InnoDB引擎和STRICT_TRANS_TABLES。
问题/疑问:
mysql_errno只捕获错误而不是警告,但是我在metatrader (1264 SQLSTATE: 22003 (ER_WARN_DATA_OUT_OF_RANGE))中得到了一个1264 MySQL警告,但是它没有说明在哪里。我怎么解决这个问题?UPDATE或INSERT,则不会收到警告和/或错误。我想知道这是否是libmysql的错误,或者找出到底是怎么回事。也许有一个特定的表/字段负责?
有什么指示吗?
发布于 2014-04-25 14:12:56
检查my.ini或my.cnf是否包含sql-mode = "STRICT_TRANS_TABLES, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION",如果包含,则需要将其更改为sql-mode = "NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION",然后重新启动SID服务。希望这能帮你解决问题
发布于 2013-08-05 11:23:54
我认为有一个存储过程正在定义范围,并且,当触发时,是一种非corret方式,例如,就像一个错误和一个正常的警告。有可能吗?
https://dba.stackexchange.com/questions/18458
复制相似问题