SQL Server 跨数据库查询具体方法

树叶云

有时会遇到一段语句里操作不同的服务器上的不同的数据库里的不同的表的情况,这就涉及到跨数据库查询,本篇文章重点为大家讲解一下SQL Server 跨数据库查询具体方法。

基本语句

SELECT * FROM 数据库A.dbo.表A a, 数据库B.dbo.表B b WHERE a.field=b.field

“DBO”可以省略 如

SELECT * FROM 数据库A..表A a, 数据库B..表B b WHERE a.field=b.field

SqlServer数据库:

--这句是映射一个远程数据库
EXEC sp_addlinkedserver '远程数据库的IP或主机名',N'SQL Server'

--这句是登录远程数据库
EXEC sp_addlinkedsrvlogin '远程数据库的IP或主机名''false', NULL, '登录名''密码'

--登录后,可以用以下格式操作远程数据库中的对象
select * from [远程数据库的IP或主机名].[数据库名].[dbo].[表名]

insert into openrowset('sqloledb','192.168.0.100';'sa';'10060','select * from knss2009.dbo.yw_kck') select * from yw_kck



++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

不同服务器数据库之间的数据操作

创建链接服务器

exec sp_addlinkedserver   'ITSV '' ''SQLOLEDB ''远程服务器名或ip地址 'exec sp_addlinkedsrvlogin 'ITSV ''false ',null, '用户名 ''密码 '

查询示例

select * from ITSV.数据库名.dbo.表名

导入示例

select * into 表 from ITSV.数据库名.dbo.表名

以后不再使用时删除链接服务器

exec sp_dropserver  'ITSV ''droplogins '

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/219559.html<

(0)
运维的头像运维
上一篇2025-04-14 04:15
下一篇 2025-04-14 04:16

相关推荐

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注