现在的位置: 首页 > web前端 > 正文

bulkinsert使用例子

2020年07月20日 web前端 ⁄ 共 915字 ⁄ 字号 评论关闭

  如果你从事与数据库相关的工作,有可能会涉及到将数据从外部数据文件插入倒SQLServer的操作。本文将为大家演示如何利用BULKINSERT命令来导入数据,并讲解怎样通过改变该命令的一些选项以便更方便且更有效地插入数据。


  bulkinsert是什么


  在SQLServer中,BULKINSERT是用来将外部文件以一种特定的格式加载到数据库表的T-SQL命令。该命令使开发人员能够直接将数据加载到数据库表中,而不需要使用类似于IntegrationServices这样的外部程序。虽然BULKINSERT不允许包含任何复杂的逻辑或转换,但能够提供与格式化相关的选项,并告诉我们导入是如何实现的。BULKINSERT有一个使用限制,就是只能将数据导入SQLServer。


  插入数据下面的例子能让我们更好的理解如何使用BULKINSERT命令。首先,我们来创建一个名为Sales的表,我们将要把来自文本文件的数据插入到这个表中。


  CREATETABLE[dbo].[Sales]


  (


  [SaleID][int],


  [Product][varchar](10)NULL,


  [SaleDate][datetime]NULL,


  [SalePrice][money]NULL


  )


  当我们使用BULKINSERT命令来插入数据时,不要启动目标表中的触发器,因为触发器会减缓数据导入的进程。


  bulkinsert例子


  在下一个例子中,我们将在Sales表上创建触发器,用来打印插入到表中的记录的数量。


  CREATETRIGGERtr_Sales


  ONSales


  FORINSERT


  AS


  BEGIN


  PRINTCAST(@@ROWCOUNTASVARCHAR(5))+'rowsInserted.'


  END


  这里我们选择文本文件作为源数据文件,文本文件中的值通过逗号分割开。该文件包含1000条记录,而且其字段和Sales表的字段直接关联。由于该文本文件中的值是由逗号分割开的,我们只需要指定FIELDTERMINATOR即可。


  总之,bulkinsert给大家简单的介绍了一些,希望大家多看看。


  

抱歉!评论已关闭.