sqlserver2005 跨两个服务器中的两张表关联查询的写法最好有例子。

sqlserver2005 跨两个服务器中的两张表关联查询的写法最好有例子。,第1张

建立链接服务器

然后这样的写法就可以了

select  

from [192168xxxxxx]库名dbo表名

你这个不是一句俩句说的了,给你个相关的贴子吧

>

select库1x,库2xxfrom库1table1,库2table2where库1table1xxx=库2table2xxx这种方式写

这样你只需要写一个库1的连接字符串。然后把语句丢给库1处理。

如果是两个不同服务器。还是用链接或存储过程吧。

在1010101上执行该命令,创建两数据库服务器的连接

--创建链接服务器

exec sp_addlinkedserver

@server ='1010102',--链接服务器名,这个可以改简单点,比如S003,引用也方便

@srvproduct = '',

@provider = N'SQLOLEDB',

@datasrc = N'1010102',--远程服务器名称

@catalog = N'Master'

go

--创建远程登录

exec sp_addlinkedsrvlogin

@rmtsrvname = '1010102',

@useself='False',

@rmtuser = 'sa', --远程服务器登录名称

@rmtpassword ='1234' --1010102数据库的登录密码

go

要说明的是,虽然你创建链接成功了但你不可以在1010101上面的某个表中,利用触发器更新1010102数据库2里面的某个表所以你只能利用Job功能,进行时段自动更新

在1010101上创建一存储过程:

Create Proc up_UpdateData

As

Begin

Update 1dbo1 Set No=BNo

From 1dbo1 A Inner Join [1010102]2dbo2 B On AISBN=BISBN WHERE ANo<>BNo --加上后面这个条件可以增加执行效率,不加上也可以

End

创建一Job:

企业管理器->1010101(实例名)->management->SQL Server Agent->Jobs

->New Job->Name(自定义)->Steps->Step name(自定义)->Command:->EXEC up_UpdateData ->OK->Schedules->自动更新的时间自定义->最后点击确定

select from [数据库1]dbo[表1] where 字段='' union

select from [数据库2]dbo[表2] where 字段='' 表示把查询的结果合并显示,上面那个有些问题,就试下这个吧。这个是要求两个表的结构式一样的 或者是要查询的字段结构是一样的就可以

以上就是关于sqlserver2005 跨两个服务器中的两张表关联查询的写法最好有例子。全部的内容,包括:sqlserver2005 跨两个服务器中的两张表关联查询的写法最好有例子。、sql数据库多个数据库进行关联查询求助(数据库多张表关联查询)、两个数据库之间的查询和更新 *** 作等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10078400.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存