无法使用Java在db2中为SEQ插入Nextval

时间:2019-04-15 11:54:00

标签: java db2 nextval

我正在尝试使用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;
}

任何帮助将不胜感激。

0 个答案:

没有答案