我在这里有一个查询,在整个数据库中搜索我选择的特定GUID.现在,它正在完成它的编程操作:遍历所有列/表组合并输出可能包含或不包含信息的表.我想将此更改为仅输出包含结果的表.
这是代码:
DECLARE
@tab_list NVARCHAR(MAX),
@col_list NVARCHAR(MAX),
@IDquery NVARCHAR(MAX),
@srvName NVARCHAR(MAX),
@getList CURSOR
SET @srvName = 'Server_Name'
SET @getList = CURSOR LOCAL FAST_FORWARD FOR
SELECT [TABLE_NAME]
,[COLUMN_NAME]
FROM [Server_Name].[INFORMATION_SCHEMA].[COLUMNS]
WHERE [COLUMN_NAME] LIKE '%id'
AND [DATA_TYPE] LIKE 'uniqueidentifier'
ORDER BY [TABLE_NAME] ASC
OPEN @getList
FETCH NEXT FROM @getList INTO @tab_list, @col_list
WHILE (@@FETCH_STATUS = 0)
BEGIN
PRINT @tab_list + ' -- ' + @col_list
SET @IDquery =
'SELECT *' +
' FROM ' + @srvName + '.dbo.' + @tab_list +
' …Run Code Online (Sandbox Code Playgroud)