-- 错误示例
-- OceanBase-3.x SQL ERROR [5114] [42000]: Invalid numeric
-- OceanBase-4.x ERROR 1292 (22007): Truncated incorrect DECIMAL value
truncate table hksdevdb.test_c;
insert into hksdevdb.test_c(C1,C2)
select
20470417 as C1,
'2047-04-17' as C2
from
hksdevdb.test_a
where
A5 = 2047-04-17 -- 出错行 A5: char(10)/varchar(10),OB默认将其解析为数字执行,导致查询结果为空
;
-- 正确示例(${TX_DATE} -> '${TX_DATE}')
truncate table hksdevdb.test_c;
insert into hksdevdb.test_c(C1,C2)
select
20470417 as C1,
'2047-04-17' as C2
from
hksdevdb.test_a
where
A5 = '2047-04-17'
;
2 个赞
日期参数容易引发血案,有时候多了引号也是不行的~
2 个赞
嗯,而且相同的错误在V3和V4中的表现不同,特别是不报错但是结果不对的场景下,很难发现!!!
1 个赞
特别是不报错但是结果不对的场景下,很难发现