sql server 查找所有表 指定字符串 的数据
您可以使用以下查询来查找SQL Server数据库中所有表中包含指定字符串的数据:
DECLARE @SearchString NVARCHAR(100) = '指定字符串'
EXEC sp_MSforeachtable '
IF EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(''?'') AND collation_name IS NOT NULL)
BEGIN
PRINT ''Searching in table: ?''
EXEC(''
SELECT *
FROM ?
WHERE (
'''' + COLUMN_NAME + '''' + '' COLLATE SQL_Latin1_General_CP1_CI_AS LIKE ''''%''''' + @SearchString + ''''%''''
OR
CAST(''['' + COLUMN_NAME + '']'' AS NVARCHAR(MAX)) COLLATE SQL_Latin1_General_CP1_CI_AS LIKE ''''%''''' + @SearchString + ''''%''
)
'')
END
'
在上面的查询中,将@SearchString变量设置为您要搜索的字符串。查询将遍历数据库中的每个表,并在每个表中搜索包含指定字符串的数据。查询将打印搜索结果的每个表的名称,并返回满足搜索条件的数据
原文地址: https://www.cveoy.top/t/topic/h7an 著作权归作者所有。请勿转载和采集!