导出Sql Server(64位)到Excel(32位)
我试图导出数据从SQL Server到Excel,但它不工作。
我的代码是
INSERT INTO OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0 Xml;HDR=YES; Database=D:\FATXL.xlsx;', 'SELECT * FROM [Sheet1$]') SELECT * FROM tabel1
错误
32位OLE DB提供程序“Microsoft.ACE.OLEDB.12.0”无法在64位SQL Server上进行加载。
我需要知道是否有可能从64位SQL Server导出数据到32位MS Excel,以及如何做到这一点?
我们应该有相同的SQL服务器和Excel的这个工作?
以下是一些永远不会失败的替代解决scheme。
替代解决scheme1
警告:您需要在SSMS中手动运行此查询。
使用“导出”将结果保存在可以在Excel中打开并保存为XLS的CSV文件中。
替代解决scheme2
警告:您需要在SSMS中手动运行此查询。
您可以将查询结果显示选项从网格更改为可以是CSV文件的文件,也可以像下面一样检查SET NO COUNT
选项
替代解决scheme3
警告:再次需要SSMS
转到数据库名称并右键单击以selectTasks> Export
菜单,这将打开SQL导入和导出向导。 您可以将其保存为包并将其部署在SSIS目录下并按计划运行。
替代解决scheme4
编写一个SSIS包来从SQL服务器获取数据并放入Excel。