SQL SERVER 2008查询其他数据库

1、访问本地的其他数据库

--启用Ad Hoc Distributed Queries--
exec sp_configure 'show advanced options',1
reconfigure exec sp_configure 'Ad Hoc Distributed Queries',1
reconfigure -- 使用完成后,关闭Ad Hoc Distributed Queries--
exec sp_configure 'Ad Hoc Distributed Queries',0
reconfigure exec sp_configure 'show advanced options',0
reconfigure --SELECT * FROM opendatasource('SQLOLEDB ','Data Source=ip(或ServerName);User ID=登陆名;Password=密码 ').数据库.dbo.表名(或视图) SELECT * FROM
opendatasource(
'SQLOLEDB ',
'Data Source=ITVS;
User ID=sa;Password=sa')
.ANSVSP.dbo.serv

2、访问其他机器上的数据库

(1)将远程机器上的sql server远程打开

(2)将远程机器上的防火墙关掉

SELECT * FROM
opendatasource(
'SQLOLEDB',
'Data Source=192.168.1.26;
User ID=sa;Password=sadan ')
.ANSVSP.dbo.serv

内联

SELECT a.bah,a.mz,b.* FROM
opendatasource(
'SQLOLEDB',
'Data Source=192.168.1.26;
User ID=sa;Password=sadan ')
.ANSVSP.dbo.serv as a inner join db_local_table b on a.bah=b.id collate Chinese_PRC_90_CI_AI; --collate Chinese_PRC_90_CI_AI 保持等号两边的排序规则一致即可

修改

UPDATE b SET b.fhsj=a.date_end FROM
opendatasource(
'SQLOLEDB',
'Data Source=192.168.1.26;
User ID=sa;Password=sadan')
.ANSVSP.[dbo].[View_Funeral_TR] as a inner join hzxxb b on a.id=b.bah collate Chinese_PRC_90_CI_AI WHERE fhsj is null;
上一篇:【网络基础】socket client 使用特定网卡


下一篇:HDUOJ Clear All of Them I 状压DP