sql 如何实现 跨计算机查询 ??
发布网友
发布时间:2022-04-08 03:04
我来回答
共4个回答
热心网友
时间:2022-04-08 04:33
这里只教你如何去跨服务器取数据,触发器自己创建哈,下面的语句是在PC2电脑上执行
有两种方式:
第一种:
insert into table2(table2字段) select table1字段 from OPENDATASOURCE(
'SQLOLEDB',
'Data Source = pc1的IP;User ID = pc1的用户名;Password = pc1的密码'
).[dbo1].[dbo].table1
使用这种方式访问时需要将Ad Hoc Distributed Queries组件开启,开启方法如下:
exec sp_configure 'Ad Hoc Distributed Queries',1
reconfigure
exec sp_configure 'show advanced options',1
reconfigure
使用完成后需关闭,将上面语句中的1改为0.
第二种:
首先创建链接服务器
exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','pc1的IP'
exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'pc1的用户名','pc1的密码'
go
使用别名查询
insert table2(table2字段) select table1字段 from [srv_lnk].[db1].[dbo].table1
至于用哪种方式看楼主喜欢了
热心网友
时间:2022-04-08 05:51
在PC1的SQL Server实例创建一个链接服务器,指向PC2的SQL实例,假设名为Linkedsrv
在触发器中使用如下语句更行PC2中的数据库
update Linkedsrv.dbo2.dbo.table2 set field = value
-- 完整的四部分名称:链接服务器名.数据库名.架构名.表名
这种做法可能影响数据库的性能。
热心网友
时间:2022-04-08 07:26
在配置文件中建立多个数据源连接jdbc,然后两个jdbc一起用不就可以了
热心网友
时间:2022-04-08 09:17
新建一个数据链