有没有人能建议如何从.xlsx文件中批量插入?
我已经尝试了下面的查询:
BULK INSERT #EVB FROM 'C:\Users\summer\Desktop\Sample\premise.xlsx'
WITH (FIELDTERMINATOR = '\t', ROWTERMINATOR = '\n', FIRSTROW = 2);
SELECT * FROM #EVB我也尝试过使用FIELDTERMINATOR like "**\t**", "**,**", "**;**", "**|**",但这也不起作用。
不幸的是,没有错误消息。
发布于 2012-10-29 23:34:12
可以将xlsx文件另存为制表符分隔的文本文件,然后执行
BULK INSERT TableName
FROM 'C:\SomeDirectory\my table.txt'
WITH
(
FIELDTERMINATOR = '\t',
ROWTERMINATOR = '\n'
)
GO发布于 2012-10-29 23:42:02
您需要使用OPENROWSET
检查这个问题:import-excel-spreadsheet-columns-into-sql-server-database
发布于 2012-10-29 23:39:51
为您的文档创建链接服务器
http://www.excel-sql-server.com/excel-import-to-sql-server-using-linked-servers.htm
然后使用普通的INSERT或SELECT INTO。如果你想要更花哨,你可以使用ADO. get的SqlBulkCopy,它接受几乎任何你可以得到DataReader的数据源,并且在插入时速度非常快,尽管读取数据的速度不是特别快。
您也可以花时间将excel电子表格转换为文本分隔文件或其他bcp supported format,然后使用BCP。
https://stackoverflow.com/questions/13124680
复制相似问题