• SQL Server 2008阻止了对组件 'Ole Automation Procedures' 的 过程'sys.sp_OACreate' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭


    通过sql 存储过程将数据生成excel到指定目录 提示如下错误:

     SQL Server 阻止了对组件 'Ole Automation Procedures' 的 过程'sys.sp_OACreate' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Ole Automation Procedures'。有关启用 'Ole Automation Procedures' 的详细信息,请参阅 SQL Server 联机丛书中的 "应用配置器"。。语句终止……

     该存储过程在sqlserver2000上生成excel没有问题,但在sql server 2008就提示此错误,通过查看联机丛书发现, sql server 2008实例默认是将 Ole Automation Procedures选择设置为禁用的,将其启用即可。启用方法如下:


    可以将 Ole Automation Procedures 选项设置为以下值。

    0 禁用 OLE Automation Procedures。 SQL Server 新实例的默认值。
    1启用 OLE Automation Procedures。
    当启用 OLE Automation Procedures 时,对 sp_OACreate 的调用将会启动 OLE 共享执行环境。

    可以使用 sp_configure 系统存储过程来查看和更改 Ole Automation Procedures 选项的当前值。

    更改方法:


    以下示例显示了如何查看 OLE Automation Procedures 的当前设置。

    EXEC sp_configure 'Ole Automation Procedures';GO
    以下示例显示了如何启用 OLE Automation Procedures。

    sp_configure 'show advanced options', 1;
    RECONFIGURE;
    sp_configure 'Ole Automation Procedures', 1;
    RECONFIGURE;

    经过上面执行后,生成excel成功。

    微软技术链接 http://msdn.microsoft.com/zh-cn/library/ms191188.aspx
    ---------------------
    作者:luckings
    来源:CSDN
    原文:https://blog.csdn.net/luck2018/article/details/7759454
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    上机课前准备
    C# 跨线程访问控件的解决方法
    C# 异步和多线程的区别
    C# BeginInvoke和EndInvoke方法
    C# 委托的回调机制
    C# 什么是委托
    C# WebBrowser的控件使用
    C# 解决WebBrowser.DocumentCompleted事件的多次调用
    平台调用数据类型
    C# 创建快捷方式
  • 原文地址:https://www.cnblogs.com/KingsLiu/p/10870529.html
Copyright © 2020-2023  润新知