这里介绍sqlserver如何实现跨服务器进行表查询和视图的创建
第一步:
EXEC sp_addlinkedserver
@server = 'CloudantDBServer', -- 连接服务器的名称(自定义)
@srvproduct = '', -- 产品名称,可以为空
@provider = 'MSDASQL', -- 提供程序,通常使用 SQL Native Client
@datasrc = 'CloudantDB_v3'; -- 被连接数据库的数据库名称(即ip带上,1433)`
上面是SQL语句创建连接服务器,在当前数据库里添加一个名为CloudantDBServer的连接服务器,备注已注明相关意思
建议使用下面sql语句进行创建连接服务器
EXEC sp_addlinkedserver 'test','','SQLOLEDB','192.168.100.63,1433' -- 上面是对应这个
第二步:
EXEC sp_addlinkedsrvlogin
@rmtsrvname = 'CloudantDBServer', -- 引用要链接的服务器名称,同上,名称需要一样
@useself = 'false',
@locallogin = null, -- 本地 SQL Server 登录用户名
@rmtuser = 'CloudantDB_username', -- 被链接数据库的用户名
@rmtpassword = 'CloudantDB_password'; -- 被链接数据库的密码
上面实施sql语句添加用户登录连接 这里的rmtsrvname对应的名称要和创建连接服务器的名称一致
备注已注明相关意思
建议使用下面sql语句进行添加用户登录连接
EXEC sp_addlinkedsrvlogin 'test','false',null,'jc','123456' -- 上面对应这个
第三步:
完成上面两步就可以进行跨服务器的查询了
select *
from test.puze.dbo.T_IEM_Equipment --test就是连接服务器名称 puze是被连接的数据库名称 dbo.T_IEM_Equipment是跨服务器被查的表
备注已注明相关意思 以上便能完成相关的跨服务器对数据库里数据的查询,建视图等可平常一样操作
额外
查询创建的连接服务器 相关语句如下
EXEC sp_linkedservers --查询有哪些连接服务器
删除已创建的连接服务器 建立的连接服务器如果不使用建议删除 删除的相关语句如下
EXEC sp_dropserver 'CloudantDBServer','droplogins' --删除连接服务器 'CloudantDBServer'是连接服务器名称