下图显示了链接服务器配置的基础:
现在利用链接服务器方式实现数据访问远程服务器数据库CustomerDB中Users表数据先本地添加LinkServer:
以下是代码片段:
-- 建立连接服务器 第一步建立连接 IP方式来控制 EXEC sp_addlinkedserver '192.168.10.104' , 'SQL Server' -- 查看链接服务器信息 [测试连接成功] select name , product, provider, data_source, query_timeout, lazy_schema_validation, is_remote_login_enabled, is_rpc_out_enabled from sys.servers where is_linked= 1
如上市建立连接服务器最简单方式.建立链接服务器过程其实调用了系统存储过程Sp_addlinkedserver. 第一个参数为Name 其实用来唯一标识链接服务器. 当然可以其他任何有意义字符串来定义,但我个人建议使用远程服务器的IP来标识.第二个参数是要添加为链接服务器的 OLE DB 数据源的产品名称. 默认为Null,如果指定”SQL Server“则无需指定其他参数.
如果你的本地装有多个数据库实例. 第一个种方式就不适用.这是就需要用SQL Server2005架构来唯一标识:
-- 含架构名 查询数据两种模式 select top 10 * from [192.168.10.104]. wl . 架构名 . 表名 -- 架构名 [采用默认架构名 ] select top 10 * from [192.168.10.104]. CustomerDB . dbo. Users
对于SQL Server 2005架构这个概念很多人比较陌生:
在用户角色设置中需要对指定访问数据CustomerDB具有读写权限:
在远程服务器创建TEst用户时使用SQL Server身份验证方式登录 这时设置密码为RemoteDB.在使用非Sa用户进行远程:
出处:IT专家网
责任编辑:bluehearts
上一页 详解SQL Server分布式查询 [2] 下一页 详解SQL Server分布式查询 [4]
◎进入论坛网络编程版块参加讨论
|