在ibm data studio尝试将数据从windows上的db2 db传输到linux上的db时,出现了以下错误:

CALL SYSPROC.ADMIN_CMD( 'LOAD FROM Path\file.dat OF IXF  REPLACE INTO
Schema.Table(ID, SID, REFERENCE, UCI, STATE, DEBTORNAME, DEBTORADDR,DEBTORZIP, DEBTORCITY, DEBTORPROVINCE, DEBTORCOUNTRY, DEBTORIBAN,
DEBTORBIC,CREDITORNAME, CREDITORADDR, CREDITORZIP, CREDITORCITY, CREDITORPROVINCE,CREDITORCOUNTRY, CREDITORIBAN, CREDITORBIC, ORGANIZATIONID,
SEQUENCETYPE, ROLE,LASTDATEOFCOLL, LASTTYPEOFCOLL, CURRENTSCHEME, SIGNATURECITY, SIGNATUREDATE, REFDEBTNAME, REFCREDNAME, COMMENTS, SOURCE,
LASTMODIFIEDBY, LASTMODIFIED, LASTSTATE, MAXAMOUNT, REQUESTCOUNT, MAXREQUESTS, VALIDFROM, VALIDTO, MANDATETYPE, HASAMENDMENT, PREVIOUSMANDATEID,
ORIREFERENCE, ORIUCI, ORICREDITORNAME, ORIDEBTORIBAN, ORIDEBTORBIC, EXTERNALID, EXTERNALREFERENCE, CUSTSPEC1, CUSTSPEC2, CUSTSPEC3, CREATIONTIME)'
 )

我犯了个错误:
An unexpected token "COMMENTS" was found following ",".  Expected tokens may include:  "<identifier>".. SQLCODE=-104, SQLSTATE=42601, DRIVER=4.19.5

最佳答案

COMMENTS显然是一个保留字(尽管当我查找DB2保留字列表时,它只包含COMMENT,而不是复数形式)。所以你需要引用它来逃避它。

CALL SYSPROC.ADMIN_CMD( 'LOAD FROM Path\file.dat OF IXF  REPLACE INTO
Schema.Table(ID, SID, REFERENCE, UCI, STATE, DEBTORNAME, DEBTORADDR,DEBTORZIP, DEBTORCITY, DEBTORPROVINCE, DEBTORCOUNTRY, DEBTORIBAN,
DEBTORBIC,CREDITORNAME, CREDITORADDR, CREDITORZIP, CREDITORCITY, CREDITORPROVINCE,CREDITORCOUNTRY, CREDITORIBAN, CREDITORBIC, ORGANIZATIONID,
SEQUENCETYPE, ROLE,LASTDATEOFCOLL, LASTTYPEOFCOLL, CURRENTSCHEME, SIGNATURECITY, SIGNATUREDATE, REFDEBTNAME, REFCREDNAME, ''COMMENTS'', SOURCE,
LASTMODIFIEDBY, LASTMODIFIED, LASTSTATE, MAXAMOUNT, REQUESTCOUNT, MAXREQUESTS, VALIDFROM, VALIDTO, MANDATETYPE, HASAMENDMENT, PREVIOUSMANDATEID,
ORIREFERENCE, ORIUCI, ORICREDITORNAME, ORIDEBTORIBAN, ORIDEBTORBIC, EXTERNALID, EXTERNALREFERENCE, CUSTSPEC1, CUSTSPEC2, CUSTSPEC3, CREATIONTIME)'
 )

07-24 09:20