除了批量插入之外,还有其他方法可以从 csv/文本文件中插入表格吗?通过使用查询而不是通过向导导入。
问问题
5703 次
3 回答
2
我在将 CSV 数据导入 SQL 数据库时使用的另一种方法是通过链接服务器,如果您将 Microsoft Access Database Engine 2010 Redistributable 安装到 SQL 服务器上(确保为您的服务器使用正确的 x86/x64 版本)建筑学):
Microsoft Access 2010 数据库引擎可再发行组件
然后你可以像这样定义一个链接服务器:
EXEC master.dbo.sp_addlinkedserver @server = N'CSVLinkedServer', @srvproduct=N'OLEDB Provider for ACE', @provider=N'Microsoft.ACE.OLEDB.12.0', @datasrc=N'S:\csv_location\', @provstr=N'Text', @catalog=N'*.csv'
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'CSVLinkedServer',@useself=N'True',@locallogin=NULL,@rmtuser=NULL,@rmtpassword=NULL
一旦你有了它,你放入文件夹 S:\csv_location\ 的任何 CSV 文件最终都会在链接服务器的默认目录中作为一个名为 filename#csv 的表。
我有一种感觉,微软不支持为此目的使用这个特定的提供程序,但我们发现它可以很好地用于数据导入,而无需求助于 SSIS 等。
于 2012-12-20T11:45:15.243 回答
1
您还可以使用 BCP.EXE,它是一种简洁的,虽然是命令行密集型的数据导入方式。
您也可以使用 OPENQUERY 从 T-SQL 打开文件并插入,但这可能不可靠。
于 2012-12-18T23:25:15.780 回答
1
您还可以使用 SQL Server 导入/导出向导在此处输入链接描述
于 2012-12-19T19:53:34.400 回答