sp_MSforeachdb查询帮助
我正在使用大量相同的数据库,所以我使用sp_MSforeachdb过程,以便我可以从表中检索信息。
我遇到的问题是盒子上还有其他数据库没有表,所以我抛出了无效的对象错误。
这是我目前所拥有的,我正在过滤LoginDatabase,因为它具有相同的表,但我不希望在查询中。
我的问题是,我怎样才能将它限制在我希望从中获取信息的表的数据库中。
SET NOCOUNT ON
CREATE TABLE #tmpData
(
DbName VARCHAR(30),
DbVersion FLOAT
)
exec sp_msforeachdb @command1='
USE ?;
INSERT INTO #tmpData
SELECT ''?'', (SELECT Setting
FROM ?.dbo.gl_SysParams
WHERE Keyword = ''DatabaseSchema'')
FROM sysobjects o
WHERE type=''U''
AND [name] = ''gl_SysParams''
AND ''?'' <> ''LoginDatabase'' ORDER BY [name]
'
SET NOCOUNT OFF
SELECT DbName, DbVersion FROM #tmpData ORDER BY DbName
DROP TABLE #tmpData
没有找到相关结果
已邀请:
2 个回复
耐钨徒
琶竞捆栓