📄 linkedserverdemo8.sql
字号:
/*
文件名称:LinkedServerDemo8.sql
目 的:连接 Access 与 SQL Server 数据表(不同种类的数据查询)
*/
USE master
GO
-- 建立一个名称为 TaipeiSQLServer 且数据来源为 SQL Server 的连接服务器
EXEC sp_addlinkedserver
@server = 'TaipeiSQLServer',
@srvproduct = N'',
@provider = N'SQLOLEDB',
@datasrc = N'XPSTATION'
GO
-- 建立一个名称为 HongKongSQLServer 且数据来源为 SQL Server 的连接服务器
EXEC sp_addlinkedserver
@server = 'HongKongSQLServer',
@srvproduct = N'',
@provider = N'SQLOLEDB',
@datasrc = N'TPSERVER'
GO
-- 建立一个名称为「北风贸易公司」且数据来源为 Access 数据库的连接服务器
EXEC sp_addlinkedserver
@server = '北风贸易公司',
@srvproduct = N'Access 2002',
@provider = N'Microsoft.Jet.OLEDB.4.0',
@datasrc = N'C:\T-SQL\Database\北风贸易公司.mdb'
GO
-- 表示如果您采用 SQL Server 的帐户验证连接至 SQL Server, 则以
-- 用户名称 Admin 且没有密码登入连接服务器「北风贸易公司」。
EXEC sp_addlinkedsrvlogin '北风贸易公司','false',NULL,'Admin',NULL
GO
-- 使用四部份名称去查询位于不同位置的 SQL Server 与 Access
-- 的不同种类的数据来源中的关联数据表
SELECT a.客户编号, a.公司名称,
SUM((c.单价 * c.数量) * (1 - c.折扣)) AS 订货总金额
FROM TaipeiSQLServer.北风贸易.dbo.客户 AS a
INNER JOIN 北风贸易公司...订货主档 AS b ON a.客户编号 = b.客户编号
INNER JOIN HongKongSQLServer.北风贸易.dbo.订货明细 AS c ON b.订单号码 = c.订单号码
GROUP BY a.客户编号, a.公司名称
-- 列出本机电脑中的连接服务器
EXEC sp_linkedservers
GO
-- 删除各个连接服务器(除非真的不再需要使用才删除)
EXEC sp_dropserver 'TaipeiSQLServer'
EXEC sp_dropserver 'HongKongSQLServer'
EXEC sp_dropserver '北风贸易公司','droplogins'
GO
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -