sql2005如何查询一个服务器上有几个数据库?
用Linked Server来查询,会有两种写法:
使用T-SQL来访问完整模式的表:SELECT * FROM LkSvr.db.dbo.TableX WITH(NOLOCK);使用OpenQuery来实现:SELECT * FROM OPENQUERY(LkSvr,'SELECT * FROM LkSvr.db.dbo.TableX WITH(NOLOCK)')第一种写法,是属于分布式查询,SQL Server 2012之前会通过调用Linked Server的实例来解析并生成执行计划。这么一来,这台Server就需要知道Linked Server相关表的统计信息,索引信息等等。而这些信息是直接从Linked Server复制过来的;
第二种写法,是将语句直接放到Linked Server上执行,由Linked Server来负责解析,和执行。
你可以尝试用第二种写法。
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有