2011-12-22 78 views
2

我是db2的新手。以下:從db2表中的csv文件導入數據

Import from 'c:\temp\devtest.del' of del insert into devtestone(col1,col2) 

給出了錯誤:

15:13:51 [IMPORT - 0 row(s), 0.000 secs] [Error Code: -104, SQL State: 42601] DB2 SQL Error: SQLCODE=-104, SQLSTATE=42601, SQLERRMC=Import from 'c:\temp\devtest.del' of del;BEGIN-OF-STATEMENT;, DRIVER=3.57.82 ... 1 statement(s) executed, 0 row(s) affected, exec/fetch time: 0.000/0.000 sec [0 successful, 0 warnings, 1 errors]

+0

看起來您正在運行來自DB2管理實用程序而不是普通的舊DB2CMD命令行程序的命令。根據程序的不同,您可能需要將反斜槓字符切換爲正斜槓,並且您可能需要清除輸入文件名稱周圍的引號。 – 2011-12-23 00:12:09

回答

3

IMPORT不是一個SQL語句,它是一個命令。

根據錯誤消息,您嘗試從使用JDBC驅動程序連接到DB2的某個實用程序執行導入。如果要從DB2 Command Editor/DB2命令窗口以外的應用程序執行導入實用程序,則需要使用ADMIN_CMD包裝器。這裏記錄在這裏:IMPORT command using the ADMIN_CMD procedure

+0

感謝您的回覆。當我執行:CALL SYSPROC.ADMIN_CMD('從del:insert into c:/temp/devtest.del導入到devtestone(col1,col2)')我得到錯誤:15:07:49 [CALL - 0 row(s) ,0.000秒] [錯誤代碼:-3030,SQL狀態:] DB2 SQL錯誤:SQLCODE = -3030,SQLSTATE =,SQLERRMC = sqlofopn -2029060079,DRIVER = 3.57.82 ... 1個語句執行,0行(s)影響,執行/讀取時間:0.000/0.000秒[0成功,0警告,1錯誤] – beetri 2011-12-29 23:40:48

+0

正如引用文件中所寫:'文件必須存在於數據庫服務器上.'如果需要導入文件在您的工作站中,您必須使用能夠理解IMPORT命令的內容:DB2 Command Editor或DB2 Command Line Processor – 2011-12-30 16:07:19