首先在两个数据库分别执行报错的查询语句,结果在mysql中得到了结果,而db2报错sqlcode=-420。 这就是一个很有意思的问题,可以猜测是两个数据对于空值的类型转换有不一样的定义。改用下面的查询语句: select*fromtabletestwherecreateDate<'2018-11-17'andcreateStatus=0 db2依然报错-420,而在mysql中查出了三条数据。
-420是使用DB2数据库的项目最常出现的错误: 它的错误原因是:字符串自变量值不符合函数的要求,通俗解释既是:你数据库中某些数据中有些字段的值不符合sql查询的要求,继而数据库当查询到该异常数据的时候出现错误而停止. 根本原因是数据来源没有控制好,造成数据库中的脏数据,再加上sql语句写的兼容性不行导致....
If the error is issued for an implicit or explicit cast, thefunction-nametoken contains the name of the cast's target data type. For implicit cast where a character-string or graphic-string value is compared with a numeric value,DB2®implicitly converts the string value to DECFLOAT(34) so...
db2 报错 sqlcode=-420 自动类型转换的问题 今天在测试遇到一个问题,前台点击页面查询数据时报错: , SQLSTATE, SQLERRMC=DECFLOAT, DRIVER=4.18.60 根据sqlcode查询错误原因为:-420 22018 字符串自变量值不符合函数的要求 查询语句大概如下: 这个问题只在测试环境出现,于是判断是数据库的数据问题.同时在debug时还发现...
[Error Code: -420, SQL State: 22018] DB2 SQL Error: SQLCODE=-420, SQLSTATE=22018, SQLERRMC=DECFLOAT, DRIVER=4.18.60 1. 根据sqlcode查询错误原因为:-420 22018 字符串自变量值不符合函数的要求 查询语句大概如下: AI检测代码解析 select * from tabletest where createDate < '2018-11-17' and creat...
应该是你插入的时候字符转化出错了 估计你的是decfloat 要转换为integer了 你
db2 中出异常为 sqlcode=-420 sqlerrmc=double,数据库中的字段类型只有varchar和decimal(12,2) -42022018字符串自变量值不符合函数的要求,虽然知道是自变量值错了,可不知道错在哪里!请大拿指点!应该是字段设为“不为空”,当插入空的值时自然不可插入!把字段改为:可以为空,... -420 22018 字符串自变量值不...
-420 22018 字符串自变量值不符合函数的要求 -421 42826 UNION操作的选择列表中没有提供相同数目的列 -423 0F001 为LOB或结果集定位器指定的值无效 -426 2D528 在不允许更新的应用服务器不允许执行COMMIT语句 -427 2D529 在不允许更新的应用服务器不允许执行ROLLBACK语句 -430 38503 在用户自定义的函数或存储过...
-420 22018 字符串自变量值不符合函数的要求 -421 42826 UNION操作的选择列表中没有提供相同数目的列 -423 0F001 为LOB或结果集定位器指定的值无效 -426 2D528 在不允许更新的应用服务器不允许执行COMMIT语句 -427 2D529 在不允许更新的应用服务器不允许执行ROLLBACK语句 ...
-1722 INVALID_NUMBER -420 22018 -1001 INVALID_CURSOR -501 24501 -1422 TOO_MANY_ROWS -811 21000 -6502 VALUE_ERROR -433 22001 -6511 CURSOR_ALREADY_OPEN -502 24502 -6532 SUBSCRIPT_OUTSIDE_LIMIT -20439 428H1 -6533 SUBSCRIPT_BEYOND_COUNT -20439 2202E -6592 CASE_NOT_FOUND -773 20000 -54 ...