将多个数据插入数据库

时间:2013-04-10 07:45:33

标签: sql sql-server tsql sql-server-2008-r2

我正在学习使用SQL Server 2008 R2,而且我对INSERT选项有点困惑。我想一次插入多个数据,我正在使用它:

INSERT INTO Members (column1, column2, column3, column4, column5)

VALUES ('value1', 'value2', 'value3', 'value4', 'value5'),

       ('value1', 'value2', 'value3', 'value4', 'value5'),

       ('value1', 'value2', 'value3', 'value4', 'value5')

哪个有效。但是,假设我想要插入1000条记录(来自另一个文件,例如Excel),我该怎么做?有关我可以学习的地方的任何参考吗?

6 个答案:

答案 0 :(得分:3)

使用SELECT语句插入多个数据,如:

INSERT INTO Members (column1, column2, column3, column4, column5)
SELECT 'value1', 'value2', 'value3', 'value4', 'value5'
UNION
SELECT 'value1', 'value2', 'value3', 'value4', 'value5'
UNION
SELECT 'value1', 'value2', 'value3', 'value4', 'value5'

INSERT INTO Members (column1, column2, column3, column4, column5)
SELECT Column1, Column2, Column3, Column4, Column5 FROM Table1

答案 1 :(得分:0)

如果你想插入很多行,你可以阅读this article - 这里解释了很多方法。

答案 2 :(得分:0)

您只需在数据库上运行Export Wizard即可。只需按照以下步骤操作即可。

第1步:右键单击数据库
第2步:选择任务
第3步:选择导出数据
第4步:输入数据源详细信息(此处您将选择Excel文件)

  • 选择Excel文件作为DataSource
  • 并提供Excel文件路径

步骤5:输入目的地详细信息(您的表名称)
步骤6:选择要重新创建的表。

多数民众赞成。

答案 3 :(得分:0)

  1. 您可以将数据文件保存为CSV格式文件,例如C:\ myData.csv
  2. 执行语句“LOAD DATA INFILE'C:/ myData.csv'INTO TABLE Members”
  3. 希望这可以帮助你:)

答案 4 :(得分:0)

如果你想从excel文件中插入值,请使用sql server的导入向导,这是最简单的。在sql server中,右键单击数据库,指向“任务”,然后单击“导入数据”或“导出数据”。 (看http://msdn.microsoft.com/en-us/library/ms140052.aspx了解更多解释)

答案 5 :(得分:0)

来自documentation

  

通过插入行可以构造的最大行数   直接在VALUES列表中是1000.如果是,则返回错误10738   在这种情况下,行数超过1000。要插入超过1000个   行,使用以下方法之一:

     
      
  • 创建多个INSERT语句
  •   
  • 使用派生表
  •   
  • 使用bcp实用程序或BULK INSERT语句批量导入数据
  •   

如果你想使用bcp实用程序,这是一个很好的答案:SQL Server Management Studio 2012 - Export/Import data from/to table