平台:sql server 2000 java 1.4
String queryStringForCustomer = "{call MIGRATE_CUSTOMERS_FILE(?,?)}";
String queryStringForCard = "{call MIGRATE_CARDS_FILE(?,?)}";
for(int i=0;i<recordIds.size();i++)
{
if(FileType.equals("1")){
callableStatement = connection.prepareCall(queryStringForCustomer);
callableStatement.setString(1,(String)recordIds.get(i));
callableStatement.setInt(2, 0);
callableStatement.execute();
}else {
callableStatement = connection.prepareCall(queryStringForCard);
callableStatement.setString(1,(String)recordIds.get(i));
callableStatement.setInt(2, 0);
callableStatement.execute();
}
callableStatement.close();
}
在下面的excute()调用代码中,它给出了sql异常,并在“{'”附近显示了“incorrrect syntax”。
程序声明起始码在
之下 CREATE PROCEDURE MIGRATE_CUSTOMERS_FILE
@FILE_RECORD_ID VARCHAR(200),
@IS_FILE NUMERIC(2) = 1
请帮我解决这个错误? 如果信息不足以解决问题,请告知。
答案 0 :(得分:1)
尝试使用prepareStatement(...)
代替prepareCall(...)
。