玩龙天子 发表于 2016-11-17 09:52:21

DB2 导入CSV文件

  导入csv文件
  1)       打开DB2 命令行
     
  2)       如果是第一次连接到远程的DB2 数据库;如果不是,请直接跳转到3)
     在DB2 命令行窗口执行:
     catalog tcpip node DB21 remote 10.22.140.226 server 50000
     CATALOG DATABASE SAFEMON as SAFEMON at NODE DB21
  3)       连接到远程的DB2 数据库, 在DB2 命令行窗口执行:
  Connect to SAFEMON USER db2admin using test@1234
  4)       如果导入的文件还没有为其创建响应数据表,在DB2 命令行窗口执行:
  CREATE TABLE TEST(COL1 VARCHAR(50), COL2 VARCHAR(50), COL3 VARCHAR(100), COL4 VARCHAR(50))
  5)       导入的CSV文件内容参见文件excel_template.csv,请确认该文件的编码格式为UTF-8
  6)       执行导入命令(注意该语句没有换行的),在DB2 命令行窗口执行:
      LOAD client FROM 'F:\excel_template.csv' OF del MODIFIED BY codepage=1208 chardel"" COLDEL0x2c METHOD P (1,2,3,4) INSERT INTO TEST( col1,col2,col3,col4)
     
           下面详细解读该语句:
  l Load Client from 说明是从客户端导入文件,如果是直接在数据服务器上执行,则去掉Client 关键词
  l OF DEL,del 是delimeter的缩写,意为以指定的标点符号作为栏位之间的分割,而不是栏位的长度是固定的
  l CODEPAGE, 指明csv文件的编码
  l Chardel,标明字符串栏位以什么字符作为起始标志,此处说明是以双引号括起来
  l COLDEL,标明栏位之间的间隔符号,此处说明是以逗号作为栏位的分隔符
  l METHOD P,说明是按照栏位的序号,来定位需要导入的栏位数据,
  另外有METHOD L, 说明是按照栏位在CSV 文件中固定的起始位置,例如
  METHOD P(001 020,022 030,032 045,047 100)
  l INSERT INTO,指明插入到哪一张表及对应的字段
  7)       去掉标题头栏位
  Delete from test where col1 =’申报单号’ and COL2=’申报日期’
  8)       检验导入是否成功
  SELECT * FROM TEST FETCH FIRST 5 ROWS ONLY
页: [1]
查看完整版本: DB2 导入CSV文件