我的代码看起来像这样:
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中。我不知道这样做是否正确,或者我做得完全错误。
1条答案
按热度按时间qrjkbowd1#
您在插入的
VALUES(...)
部分缺少逗号