zoukankan      html  css  js  c++  java
  • txt文件分割导入数据库

    --txt文件分割导入数据库

    drop table a;
    --Step 1:建表
    create table a(a1 varchar(5), a2 varchar(5), a3 varchar(5), a4 varchar(5));

    --Step 2:在'C:\'创建一个名为'test.txt'的记事本文件,输入以下内容
    a1|a2|a3|a4$$b1|b2|b3|b4$$c1|c2|c3|c4$$

    --Setp 3:导入数据:[MRM20090721]是数据库名,[dbo]是对象名, [a]是表名
    BULK INSERT [MRM20090721].[dbo].[a]
    FROM 'c:\test.txt' 
    WITH
    FIELDTERMINATOR
    = '|'
    ROWTERMINATOR
    = '$$' 


    select * from a;
    --------------------------
    a1    a2    a3    a4
    b1    b2    b3    b4
    c1    c2    c3    c4

    /*
    表A中有5个字段, 分别为金币排名(goldtop)、用户名(username)、时间(time)、金币数(gold)、地区(address)
    要求:先清空表A的里的所有数据。 然后,插入本地路径下的一个TXT文本文件的内容。
    如路径为:E:\file\aaa.txt 路径通过存储过程参数的形式传递进去。 
    TXT的文本内容为格式为:148|小明|2009-06-03|10|重庆 
    TXT的格式和表A的字段相对应,但有“|”符号分割 请各位帮忙把想对应的数据存入到相应的字段。
    */
    -----------------------------------------------------------------
    create table tb(goldtop int,username varchar(10),[time] datetime,gold int,address varchar(10))
    go
    alter proc test 
    @path varchar(100)
    as
    truncate table tb
    exec('BULK INSERT tb
    FROM
    '''+@path+'''
    WITH

      FIELDTERMINATOR =
    ''|''
      ROWTERMINATOR =
    ''\n''
    )
    ')
    go
    exec test 'd:\1.txt'

  • 相关阅读:
    xgboost系列之应用xgboost的注意事项
    【pandas】pandas.DataFrame.rename()---重置索引名称
    【剑指offer】复杂链表的复制
    【剑指offer】二叉树中和为某一值的路径,C++实现
    设计模式21 访问者模式
    设计模式20 迭代器模式
    设计模式19 中介者模式
    设计模式18 观察者模式
    设计模式17 状态模式
    设计模式16 责任链模式
  • 原文地址:https://www.cnblogs.com/zengxiangzhan/p/1638191.html
Copyright © 2011-2022 走看看