sql - 使用 t-sql 导出 Excel 问题

标签 sql excel sql-server-2008 export

我有 windows 10 和 office 2007。如何使用 t-sql 导出 excel。请提供逐步解决方案。我正在使用 Openrowset 命令。

但它给出了以下错误:

无法处理对象“SELECT * FROM [ProductList$]”。链接服务器“(null)”的 OLE DB 提供程序“Microsoft.ACE.OLEDB.12.0”表示该对象没有列,或者当前用户对该对象没有权限。

最佳答案

我有点遇到这样的问题,我已经解决了:

T-SQL OPENROWSET from Excel worksheet
-- Import Excel data into global temporary table
DECLARE @SQLconnect VARCHAR(8000), @FileName varchar(256)
SET @FileName='F:\data\export\excel\Top10.xls'
SET @SQLconnect = 'SELECT * INTO ##tmpOrders FROM OPENROWSET(''Microsoft.Jet.OLEDB.4.0'', ''Excel 8.0;Database=' + @FileName + ''', ''SELECT * FROM [Sheet1$]'')'
PRINT @SQLconnect
-- SELECT * INTO ##tmpOrders FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;Database=F:\data\export\excel\Top10.xls', 'SELECT * FROM [Sheet1$]')
EXEC (@SQLconnect)
SELECT * FROM ##tmpOrders
SELECT COUNT(*) FROM ##tmpOrders
-- 2452
DROP TABLE ##tmpOrders

您可以根据您的情况调整代码。

关于sql - 使用 t-sql 导出 Excel 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46537916/

相关文章:

Excel 仅消耗 70MB 时出现 VBA "out of memory"错误

c# - 如何检查单元格是否为空 (Excel\VisualC#)

excel - 如何从 Excel 单元格中删除文本/字符

sql-server - 如何使用唯一标识复制表 SQL Server 2008 中的所有值

sql-server-2008 - 逗号分隔结果集 + SQL 查询

sql-server-2008 - 在 SQL Server 中表示树?

mysql - SQL:分组依据 - 数量最大的进一步属性

sql - 在 ms access 中显示空白(null/empty)值

php - MySQL - 从表中选择全部并从另一个表中选择相关行

php - 在 PHP 和 MySQL 中首先显示以最高价格订购的记录