我必须将List从java传递给JDBC查询(我用xml文件编写)。
列出transactionTypeStringList,它可以有3或6个
在将其传递给查询之前,我已使用以下代码连接所有列表值以连接
transactionTypeString= String.join("',' ", transactionTypeStringList);
transactionTypeString= "'"+transactionTypeString+ "'";
查询:
select count(*) from transaction where transactiontype in (?);
我正在使用db2 db,当我运行程序时,我遇到以下异常:
引起:com.ibm.db2.jcc.am.SqlDataException:DB2 SQL错误:SQLCODE = -302,SQLSTATE = 22001,SQLERRMC = null,DRIVER = 3.64.96
当我搜索此错误代码时,它指出“插入数据库表列的数据大于指定的列长度”。我理解,因为我正在通过值列表来替换单个? 但是现在我不知道如何将多个值从java代码传递给jdbc来替换单个?。
我不想创建多个查询(一个有3个,另一个有6个值)。请帮我解决这个问题。