📄 linkedserverdemo2.sql
字号:
/* 文件名称: LinkedServerDemo2.sql */
USE 北风贸易
-- 如果并未指定文件来源, 则服务器名称必须就是所要连接的服务器的名称
EXEC sp_addlinkedserver @server = 'XPSTATION',
@srvproduct = N'SQL Server'
GO
-- 自定义连接服务器的名称, 此时必须指定其他参数
-- 连接服务器 MyLinkedServer1 的文件来源是网络名称为 TPSERVER 的 SQL Server
EXEC sp_addlinkedserver @server = 'MyLinkedServer1',
@srvproduct = N'',
@provider = N'SQLOLEDB',
@datasrc = N'TPSERVER'
GO
-- 自定义连接服务器的名称并指定当前文件库
-- 连接服务器 MyLinkedServer2 的文件来源是网络名称为 W2KSTATION1 的 SQL Server
EXEC sp_addlinkedserver @server = 'MyLinkedServer2',
@srvproduct = N'',
@provider = N'SQLOLEDB',
@datasrc = N'W2KSTATION1',
@catalog = '北风贸易'
GO
-- 以四部份名称查询连接服务器 MyLinkedServer1 上的「章立民工作室」文件表
SELECT * FROM MyLinkedServer1.北风贸易.dbo.章立民工作室
GO
-- 以四部份名称查询连接服务器 MyLinkedServer1 上的各个关联文件表
SELECT * FROM MyLinkedServer1.北风贸易.dbo.客户 a
INNER JOIN MyLinkedServer1.北风贸易.dbo.订货主档 b
ON a.客户编号 = b.客户编号
INNER JOIN MyLinkedServer1.北风贸易.dbo.订货明细 c
ON b.订单号码 = c.订单号码
GO
-- 针对本机电脑上的「客户」文件表、连接服务器 MyLinkedServer1 上的「订货主档」
-- 文件表、以及连接服务器 MyLinkedServer2 上的「订货明细」文件表进行关联式查
-- 询, 以便通过跨服务器查询来存取存放于不同位置但是彼此相关联的文件记录
SELECT * FROM 客户 a
INNER JOIN MyLinkedServer1.北风贸易.dbo.订货主档 b
ON a.客户编号 = b.客户编号
INNER JOIN MyLinkedServer2.北风贸易.dbo.订货明细 c
ON b.订单号码 = c.订单号码
GO
-- 将查询命令传送至连接服务器 TPSERVER 上执行
SELECT * FROM OPENQUERY(XPSTATION,'SELECT * FROM 北风贸易.dbo.飞狐工作室')
GO
-- 将查询命令传送至连接服务器 MyLinkedServer1 上执行
SELECT * FROM OPENQUERY(MyLinkedServer1,'SELECT * FROM 北风贸易.dbo.飞狐工作室')
GO
-- 将查询命令传送至连接服务器 MyLinkedServer2 上执行
SELECT * FROM OPENQUERY(MyLinkedServer2,'SELECT * FROM 飞狐工作室')
GO
-- 删除连接服务器。
-- 再次提醒您,于正常状况下,连接服务器不会立即删除,
-- 而会持续使用,直到您真的不需要再使用为止。
EXEC sp_dropserver 'XPSTATION'
EXEC sp_dropserver 'MyLinkedServer1'
EXEC sp_dropserver 'MyLinkedServer2'
GO
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -