• SqlServer中BULK INSERT用法简介


         首先,我们创建一张TABLE,如下面T-SQL脚本:

       1:  create table test
       2:  (id int,
       3:  amount int check(amount >=1000 and amount<=5000));

    假设有这样的文本数据:

    1    700
    2    2000
    3    870
    4    4500

    下面这个语句不检查约束:

       1:  bulk insert test
       2:  from 'f:\test.txt'
       3:  with
       4:  (fieldterminator=',',
       5:  rowterminator='\n')

    这个是启用约束的:

       1:  bulk insert test 
       2:  from 'f:\test.txt' 
       3:  with 
       4:  (fieldterminator=',', 
       5:  rowterminator='\n', 
       6:  check_constraints) 
       7:  select * from test 

    还可以使用FIRSTROW和LASTROW限制行数。如下COPY前三行:

       1:  bulk insert test
       2:  from 'f:\test.txt'
       3:  with
       4:  (fieldterminator=',',
       5:  rowterminator='\n',
       6:  FIRSTROW =1,
       7:  LASTROW=3)

    使用ERRORFILE选项 错误处理,如下记录到F:\error.txt

       1:  bulk insert test
       2:  from 'f:\test.txt'
       3:  with
       4:  (fieldterminator=',',
       5:  rowterminator='\',
       6:  FIRSTROW =1,
       7:  LASTROW=3,
       8:  ERRORFILE ='F:\error.txt',
       9:  check_constraints)

    关于BULK INSERT,请参考MSDN。希望对您开发有帮助。


    作者:Petter Liu
    出处:http://www.cnblogs.com/wintersun/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    该文章也同时发布在我的独立博客中-Petter Liu Blog

  • 相关阅读:
    消息队列接口API(posix 接口和 system v接口)
    Ubuntu 安装 Eclipse C/C++开发环境
    Ubuntu下Eclipse搭建ARM开发环境
    Linux进程间通信——使用流套接字
    Linux进程间通信——使用数据报套接字
    Linux进程间通信——信号集函数
    Linux进程间通信——使用信号
    Linux进程间通信——使用匿名管道
    mappedBy的作用
    VS Code 配置 C/C++ 环境
  • 原文地址:https://www.cnblogs.com/wintersun/p/1948034.html
Copyright © 2020-2023  润新知