当使用Teradata 14而不是JDBC时,我对此SQL查询绑定对
会收到以下SQL错误查询
"select regexp_instr('abc', 'a' || ?) s"
绑定
"bc"
错误
com.teradata.jdbc.jdbc_4.util.JDBCException : [Teradata Database] [TeraJDBC 14.10.00.17] [Error 3536] [SQLState HY000] UPPERCASE or CASESPECIFIC specified for non-CHAR data.
当我使用内联文字直接执行查询时,它可以正常工作。
任何想法在这里有什么不妥?
答案 0 :(得分:1)
Teradata的反馈意见:
“看起来这可能是Teradata数据库中的一个错误”。您可以通过将字符串联表达式CAST到VARCHAR来解决此问题。
"select regexp_instr('abc', cast('a' || ? as varchar(100))) s"