下面SQL文在高版本(系统7.1)可以运行,但是在5.4版本SQL0418的error
select A1,A2from test
where UPPER(A1) = UPPER(#[paramMap,B1])
但下面强制转换(CAST)后,5.4版本也可以运行
select A1,A2from test
where UPPER(A1) = UPPER(CAST(#[paramMap,B1]) AS VARCHAR(10))
是在低版本中,类型即使一致,也都要做强制类型转换么?
因为不想改SQL文(改动范围太大),在两个系统版本都能运行,有没有其他好办法,拜托哪位高手帮解答!
db2 ? SQL0418
SQL0418N A statement contains a use of an untyped parameter marker, the DEFAULT keyword, or a null value that is not valid.
检查下环境,看看你的参数传过来之后是什么类型的,是否有指定参数的类型;