我正在尝试使用nextval将seq插入db2表中,但是在日志中出现以下错误:
PreparedStatementnextval for maximo.REGION_SHEET_2GIDSEQ
ERROR: [jcc][1091][10404][3.63.123] Invalid data conversion: Parameter instance nextval for maximo.REGION_SHEET_2GIDSEQ is invalid for the requested conversion. ERRORCODE=-4461, SQLSTATE=42815
com.ibm.db2.jcc.am.SqlSyntaxErrorException: [jcc][1091][10404][3.63.123] Invalid data conversion: Parameter instance nextval for maximo.REGION_SHEET_2GIDSEQ is invalid for the requested conversion. ERRORCODE=-4461, SQLSTATE=42815
at com.ibm.db2.jcc.am.fd.a(fd.java:679)
at com.ibm.db2.jcc.am.fd.a(fd.java:60)
at com.ibm.db2.jcc.am.fd.a(fd.java:103)
at com.ibm.db2.jcc.am.hc.a(hc.java:744)
at com.ibm.db2.jcc.am.hc.a(hc.java:664)
at com.ibm.db2.jcc.am.hc.a(hc.java:1336)
at com.ibm.db2.jcc.am.hc.a(hc.java:1306)
at com.ibm.db2.jcc.am.io.a(io.java:2370)
at com.ibm.db2.jcc.am.io.Bc(io.java:5586)
at com.ibm.db2.jcc.am.io.l(io.java:2753)
我将以下字符串传递给变量,然后在其他类的preparedstatement中调用它。
String Region_Sheet_2gid = "nextval for maximo.REGION_SHEET_2GIDSEQ";
在下面的插入语句中将上面的值分配给REGION_SHEET_2GID
public String getInsertStatement() {
return "insert into maximo." +tablename+ " (SITECODE,BSCNAME,CITYNAME,REGION,VENDOR,TYPE"
+ ",NOOFCELLS,RBU,LATITUTE,LONGITUDE,LAC,SITENAME,ISACTIVE,PRIORITY,STATUS_2G_3G,REGION_SHEET_2GID,MORAN_SITES,DEODAR_SHARED,SITEPOWERPROFILETYPE,SITETYPE,OMC)"
+ " values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
}
PrepareStatement:
ps.setString(16, this.getREGION_SHEET_2GID());
SettersGetter:
public String getREGION_SHEET_2GID()
{
return REGION_SHEET_2GID;
}
public void setREGION_SHEET_2GID(String rEGION_SHEET_2GID) {
REGION_SHEET_2GID = rEGION_SHEET_2GID;
}
任何帮助将不胜感激。