算术异常数字溢出或字符串截断字符串右截断firebird,插入table时
arithmetic exception numeric overflow or string truncation string right truncation firebird, When inserting into a table
这是我提出问题的查询部分:
从 table1 到 table2 的插入
insert into table2 (COLUMNS......,LOCAL)
SELECT COLUMNS,....., IIF( M.COUNTRY=213 , (((P.PRICE *@QUANTITY)*20)/100), 0) as LOCAL
where .....
如果 M.COUNTRY 是数字它工作正常否则如果字符串 ex:FRA 它失败并显示标题消息。
M.COUNTRY 数据类型为 VARCHAR(20)
LOCAL Colmumn 的数据类型为 NUMERIC(8,2)
我找到了问题所在,我有另一列 M.COUNTRY 我想将它的值从 VARCHAR(20) 插入到 CHAR(1) 的另一列,我的错误显然会失败,因为它不适合尺寸。 Firebird 让我感到困惑,因为错误出现在我首先发布的查询行中,而不是导致问题的错误,它误导了我进行调试。
这是我提出问题的查询部分: 从 table1 到 table2 的插入
insert into table2 (COLUMNS......,LOCAL)
SELECT COLUMNS,....., IIF( M.COUNTRY=213 , (((P.PRICE *@QUANTITY)*20)/100), 0) as LOCAL
where .....
如果 M.COUNTRY 是数字它工作正常否则如果字符串 ex:FRA 它失败并显示标题消息。 M.COUNTRY 数据类型为 VARCHAR(20) LOCAL Colmumn 的数据类型为 NUMERIC(8,2)
我找到了问题所在,我有另一列 M.COUNTRY 我想将它的值从 VARCHAR(20) 插入到 CHAR(1) 的另一列,我的错误显然会失败,因为它不适合尺寸。 Firebird 让我感到困惑,因为错误出现在我首先发布的查询行中,而不是导致问题的错误,它误导了我进行调试。