IF @hr=0
EXEC @hr=sp_OACreate 'Excel.Application', @objExcel OUT
创建excel的上述行给出了错误代码“-2147221005”
答案 0 :(得分:2)
您正在尝试在SQL Server上为Excel创建COM对象,但它失败了。
你真的在SQL Server上安装了Microsoft Office软件包吗?通常情况下,这不是一个好主意....(至少在生产服务器上)。
如果我是你,我会尝试找到另一种方法来生成Excel可以使用的文件 - 例如一个CSV文件或类似的东西。
有关一些想法,请参阅:
答案 1 :(得分:2)
此类处理不属于SQL clr过程。使用Office的主互操作程序集在客户端中执行此操作,请参阅How to automate Microsoft Excel from Microsoft Visual C# .NET。如果您坚持从服务器执行此操作,则SQL Server实例可能会意外消失。
答案 2 :(得分:0)
也许您没有在Sql server框上安装Excel。
您应该尝试使用其他方法
见
为评论编辑:
也许这最好由Application层处理,让Sql Server做它最擅长的事情。