我正在使用jdbc查询Redshift集群。查询只有一个参数:
select * from table_name bc where bc.column_name ~ ? limit 10
我正在使用提供参数的方式
stmt.setString(1, "expected_value");
查询执行失败,出现异常:
org.postgresql.util.PSQLException: ERROR: The pattern must be a valid UTF-8 literal character expression
Detail:
-----------------------------------------------
error: The pattern must be a valid UTF-8 literal character expression
code: 8001
context:
query: 496280
location: cgx_impl.cpp:1902
process: padbmaster [pid=4192]
-----------------------------------------------
没有参数执行查询是正常的:
select * from table_name bc where bc.column_name 'expected_value' ? limit 10
有什么想法可以引起这个异常吗?