今天在利用SQL从数据库中导出数据的时候,报出了以下的错误:
SQL Server 阻止了对组件 'Ole Automation Procedures' 的 过程'sys.sp_OACreate' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Ole Automation Procedures'。有关启用 'Ole Automation Procedures' 的详细信息,请参阅 SQL Server 联机丛书中的 "外围应用配置器"。
出现该错误的问题是因为未开启"启用OLE自动化"功能。那么我们要如何开启该功能呢?
一,利用外围应用配置器
选择"开始"- >"程序"- >"Microsoft Sql Server 2005"- >"配置工具"- >"功能的外围应用配置器"- >"OLE 自动化",然后将"启用OLE自动化"勾选起来就好了。
二,利用Sql设置
sp_configure系统存储过程:
在设置之前我们首先要了解sp_configure系统存储过程,该存储过程用来显示或更改当前服务器的全局配置设置。
语法:
sp_configure [ [ @configname = ] 'option_name'
[ , [ @configvalue = ] 'value' ] ]
参数:
[ @configname= ] 'option_name'
配置选项的名称。 option_name 的数据类型为 varchar(35),默认值为 NULL。 SQL Server Database Engine能够识别构成配置名
称的任何唯一字符串。 如果未指定该参数,则返回选项的完整列表。
[ @configvalue= ] 'value'
新的配置设置。 value 的数据类型为 int,默认值为 NULL。 最大值取决于各个选项。
返回代码值:
0(成功)或 1(失败)
然后执行以下sql,以下sql将启用OLE自动化功能
EXEC sp_configure 'Ole Automation Procedures',1
以下sql将再次关闭OLE自动化功能:
EXEC sp_configure 'Ole Automation Procedures',0
如果我们在执行以上sql的时候显示"
配置选项 'Ole Automation Procedures' 不存在,也可能是高级选项"错误,是因为系统隐藏掉了show advanced options的配置项,我们可以先执行以下sql后再重新设置:
exec sp_configure 'show advanced options',1
reconfigure
从这个sql的词义我们也可以猜测出该sql的意思,即显示高级选项。9; ).test.dbo.roy_ta