从一个表到另一个表在SQL Server数据库中批量插入

时间:2015-04-25 13:44:28

标签: sql sql-server tsql sql-server-2012

我在一个表中有200k条记录,我想将这些记录插入另一个表中。我读过有关批量插入的内容,但我在msdn网站上找到的查询没有任何意义。

这是查询

 BULK INSERT AdventureWorks2012.Sales.SalesOrderDetail
 FROM 'f:\orders\lineitem.tbl'
 WITH 
  (
     FIELDTERMINATOR =' |',
     ROWTERMINATOR =' |\n'
  );

什么是f:\orders\lineitem.tbl,而这只是没有任何意义。

我有一个包含四列的表:id,frm,to1和country

目的地表中的相同

任何简单的语法都会有所帮助

我正在使用SQL Server 2008/12

3 个答案:

答案 0 :(得分:4)

BULK INSERT从外部数据文件导入。如果您已经拥有SQL Server表中的数据,那么您应该执行以下操作:

INSERT INTO NewTable (field1, field2, field3)
SELECT field1, field2, field3 FROM OldTable

请勿将BULK INSERT指向您的SQL Server数据库文件。示例代码中引用的.tbl文件是带有分隔字段的文本文件。

答案 1 :(得分:0)

批量插入用于将外部数据从文件导入到sql表中

BULK INSERT 'tableName' From 'File Path'

如果您在sql中将数据从一个表复制到另一表,请使用:

select into instate insert into like ' select * into table1 From table2

答案 2 :(得分:0)

0