使用sql查询链接服务器所有的数据库、用户和表

tonghxyyy 2012-10-15 08:58:18
通过sql SELECT * FROM sys.servers能够查询服务器所拥有的所有链接服务器对象,想继续通过使用sql查询每个链接服务器上所有的数据库、用户的表,有对应的sql语句么?非常感谢!!!
...全文
3230 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
gogodiy 2012-10-15
  • 打赏
  • 举报
回复
仅供参考:
链接服务器的所有数据库:

SELECT * FROM [链接服务器名称].[数据库名称].sys.databases

链接服务器的所有用户:

SELECT * FROM [链接服务器名称].[数据库名称].sys.syslogins
SELECT * FROM [链接服务器名称].[数据库名称].sys.sysremotelogins
SELECT * FROM [链接服务器名称].[数据库名称].sys.sysoledbusers
SELECT * FROM [链接服务器名称].[数据库名称].sys.sysusers

链接服务器的所有表:

SELECT * FROM [链接服务器名称].[数据库名称].sys.sysobjects WHERE xtype='U'

gogodiy 2012-10-15
  • 打赏
  • 举报
回复

SELECT * FROM [链接服务器名称].[数据库名].sys.objects

然后根据type字段的值,分别对应不同数据库对象,具体自己看下MSDN好了。
tonghxyyy 2012-10-15
  • 打赏
  • 举报
回复
非常感谢!
但可能您理解错了,我的意思是希望使用sql语句查询链接服务器所有的拥有的数据库、用户和表,不是查询链接服务器上的数据,我仅仅是想获得链接服务器上现在有多少个数据库,每个数据库的名字是什么。
快溜 2012-10-15
  • 打赏
  • 举报
回复
--创建链接服务器   
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 '

--连接远程/局域网数据(openrowset/openquery/opendatasource)
--1、openrowset

--查询示例
select * from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)

--生成本地表
select * into 表 from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)

--把本地表导入远程表
insert openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)
select *from 本地表

--更新本地表
update b
set b.列A=a.列A
from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)as a inner join 本地表 b
>exec sp_addlinkedserver @server=’别名’,@provider=’sqloledb’,@srvproduct=’’,@datasrc=’远程服务器IP’



远程注册成功:(亲测)

--exec sp_addlinkedserver '注册名','','SQLOLEDB','远程数据库名'
--exec sp_addlinkedsrvlogin '注册名','false',null,'用户名','密码'
--go

tonghxyyy 2012-10-15
  • 打赏
  • 举报
回复
怎么访问呀?谢谢!
快溜 2012-10-15
  • 打赏
  • 举报
回复
创建连接服务器,然后访问系统表。

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧