groovy DB2 SQL错误:查询代码= -104,查询状态=42601,查询错误代码=?;年月日时时分秒,驱动器=3.64.82

brc7rcf0  于 2022-11-01  发布在  DB2
关注(0)|答案(1)|浏览(172)

我的代码看起来像这样:

addToTable2(ObjectDTO objectDTO) {
   def sql = sql.execute(
    """INSERT INTO SCHEMA.TABLE2 (
        COLUMN1,
        COLUMN2,
        COLUMN3 )
        VALUES (
         ${objectDTO.property1}
         ${objectDTO.property2}
         ${objectDTO.property3})""")
}

ArrayList<ObjectDTO> fetchValuesFromTable1() throws CollectionsException {

    ArrayList<ObjectDTO> fetchValues= new ArrayList<ObjectDTO>()
    def sql = """
        SELECT *
        FROM SCHEMA.TABLE1
        ORDER BY DATE DESC FETCH FIRST 1 ROW ONLY"""

    try {
      if(this.sql != null) {
        this.sql.eachRow(sql) {
          resultSet ->
            ObjectDTO objectDTO = new ObjectDTO()
            objectDTO.setProperty1(resultSet.PROPERTY1)
            objectDTO.setProperty2(resultSet.PROPERTY2)
            objectDTO.setPropety3(resultSet.PROPERTY3)

             objectList.add(poulSifr)
           }
         }

      for(ObjectDTO objectDTO: objectList) {
        addToTable2(objectDTO)
      }

    } catch (SQLException se) {
      log.info "fetchValues error $se.message  executed sql: $sql"
       throw new CollectionsException("fetchValues message $se.message")
    } finally {
      if (this.sql != null) {
        this.sql.close()
      }
    }
    objectList
  }

我收到此错误/警告:
警告groovy.sql.Sql -无法执行:插入模式表(列1、列2、列3)值(?、?、空值)
DB2 SQL错误:查询代码= -104,查询状态=42601,查询错误代码=?;年月日时时分秒,驱动器=3.64.82
每当我从Table 1中获取最后一个值时,我都需要将其放入Table 2中。我不知道这样做是否正确,或者我做得完全错误。

qrjkbowd

qrjkbowd1#

您在插入的VALUES(...)部分缺少逗号

相关问题