Transact-SQL 参考

sp_serveroption

为远程服务器和链接服务器设置服务器选项。

在此次发布的版本中,使用 use remote collationcollation name 这两个新选项增强了 sp_serveroption 选项,使其支持链接服务器中的排序规则。

语法

sp_serveroption [@server =] 'server'
    ,[@optname =] 'option_name'
    ,
[@optvalue =] 'option_value'

参数

[@server =] 'server'

是要为其设置选项的服务器的名称。server 的数据类型为 sysname,无默认值。

[@optname =] 'option_name'

是为指定的服务器设置的选项。option_name 的数据类型为 varchar(35),无默认值。option_name 可以是下列值中的任何一个。

描述
collation compatible 影响分布式查询在链接服务器上的执行。如果该选项设置为 true,则 Microsoft® SQL Server™ 假定链接服务器中的所有字符在字符集和排序规则序列(或排序次序)上与本地服务器兼容。这使 SQL Server 得以将字符列上的比较运算发送给提供程序去执行。如果没有设置此选项,SQL Server 将总是在本地执行字符列上的比较运算。

只有在确信链接服务器所对应的数据源与本地服务器有相同的字符集和排序次序时,才应当设置此选项。

collation name 如果 use remote collationtrue,而数据源不是 SQL Server 数据源,则指定远程数据源使用的排序规则名称。此名称必须是 SQL Server 支持的排序规则之一。

如果访问的是 SQL Server 以外的 OLE DB 数据源,但该数据源的排序规则与 SQL Server 的某个排序规则匹配,则使用该选项。

链接服务器必须支持该服务器中所有列使用的单个排序规则。如果链接服务器支持单个数据源内的多个排序规则,或者如果无法确定链接服务器的排列规则是否与 SQL Server 的某个排序规则匹配,则不要设置该选项。

connect timeout 连接到链接服务器时的超时值。

如果为 0,则使用 sp_configure 的默认值。

data access 启用和禁用分布式查询访问的链接服务器。仅用于通过sp_addlinkedserver 添加的 sysserver 项。
dist 分发服务器。
dpub 到该分发服务器的远程发布服务器。
lazy schema validation 确定是否检查远程表的架构。

如果为 ture,则在查询开始时跳过远程表的架构检查。

pub 发布服务器。
query timeout 链接服务器上的查询超时值。

如果为 0,则使用 sp_configure 的默认值。

rpc 从给定的服务器启用 RPC。
rpc out 对给定的服务器启用 RPC。
sub 订阅服务器。
system 仅限内部使用。
use remote collation 确定是使用远程列的排序规则还是本地服务器的排序规则。

如果为 true,则 SQL Server 数据源使用远程列的排序规则,非 SQL Server 数据源使用 collation name 中指定的排序规则。

如果为 false,则分布式查询将总是使用本地服务器的默认排序规则,而 collation name 和远程列的排序规则将被忽略。默认设置为 false。(false 值符合与 SQL Server 7.0 中使用的排序规则语义。)


[@optvalue =] 'option_value'

指定是启用(TRUEon)还是禁用(FALSEoffoption_nameoption_value 的数据类型为 varchar(10),无默认值。

option_value 可以是用于 connect timeoutquery timeout 选项的非负整数。对于 collation name 选项,option_value 可以是排序规则名称或 NULL。

返回代码值

0(成功)或 1(失败)

注释

如果 collation compatible 选项设置为 TURE,则 collation name 将自动设置为 NULL。如果 collation name 设置为非 NULL 值,则 collation compatible 将自动设置为 FAISE。

权限

只有 sysadminsetupadmin 固定服务器角色的成员才能执行 sp_serveroption

示例
A. 启用发布服务器/订阅服务器

下例将服务器设置为发布服务器/订阅服务器的组合。

USE master
EXEC sp_serveroption 'ACCOUNTS', 'dpub', 'TRUE'
B. 禁用分发服务器

下例关闭 SEATTLE2 服务器的 dist 选项。

USE master
EXEC sp_serveroption 'SEATTLE2', 'dist', 'off'
C. 使链接服务器的排序规则与本地 SQL Server 兼容

下例配置与另外一台 SQL Server(即 SEATTLE3)相对应的链接服务器,使其排序规则与本地 SQL Server 兼容。

USE master
EXEC sp_serveroption 'SEATTLE3', 'collation compatible', 'true'

请参见

sp_adddistpublisher

sp_addlinkedserver

sp_dropdistpublisher

sp_helpserver

系统存储过程