sql server批量插入

时间:2009-11-04 09:00:13

标签: sql-server

我想插入带有特殊字符的csv文件 如何将csv文件转换为具有特殊字符的SQL Server数据库

6 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

您可以使用BULK INSERT T-SQL命令(它还有一个命令行版本):

http://msdn.microsoft.com/de-de/library/ms188365.aspx

答案 2 :(得分:0)

除了SQL BULK insert之外,您还可以查看SQL Server Integration Services,如果您只需要执行一次。

在SQL Server Management Studio中,转到对象资源管理器,找到您的数据库,右键单击它,然后选择“任务>导入数据”。这将打开SSIS向导,它允许您选择源(您的CSV文件),目标(您的SQL Server数据库+表),它支持仅选择某些字段,重命名它们等等。

对于“一次性”操作,这是一个非常好用且有用的向导。

答案 3 :(得分:0)

如果您使用.NET编程,可以使用CsvHelper和我编写的BulkInserter类。

使用CsvHelper将csv行读取为CLR对象,BulkInserter将为您将它们引入数据库。这是BulkInserter usage

答案 4 :(得分:0)

您可以在SQL中创建一个过程,每次要批量插入时都可以调用该过程,或者您可以对其进行硬编码。

硬编码的BULK INSERT将是:

BULK   
INSERT *TableName*   
FROM *'FilePath'*   
WITH   
(   
FIELDTERMINATOR = ',',   
ROWTERMINATOR = '\n',   
CODEPAGE = 'ACP'   
)   
GO

我已多次使用过这个。我认为最好将它用作程序,如果你要使用它很多,但这意味着你需要创建程序并在每个查询中调用它。

答案 5 :(得分:-1)

Sql Bulk insert