And*_*ite 18 sql sql-server string search
我有一个数据库,其中拼写错误的字符串出现在不同表中的不同位置.是否有SQL查询可用于在数据库中的每个可能的varchar/text列中搜索此字符串?
我正在考虑尝试以某种方式使用information_schema视图来创建动态查询,但我不确定这是否有效,或者是否有更好的方法.
如果有帮助,我正在使用MS SQL Server.
edo*_*oft 24
使用此处的技术,以下脚本为给定数据库中的所有((n)var)char列生成SELECT.复制/粘贴输出,删除最后一个'union'并执行..你需要用你正在寻找的字符串替换MISSPELLING HERE.
select
'select distinct ''' + tab.name + '.' + col.name
+ ''' from [' + tab.name
+ '] where [' + col.name + '] like ''%MISSPELLING HERE%'' union '
from sys.tables tab
join sys.columns col on (tab.object_id = col.object_id)
join sys.types types on (col.system_type_id = types.system_type_id)
where tab.type_desc ='USER_TABLE'
and types.name IN ('CHAR', 'NCHAR', 'VARCHAR', 'NVARCHAR');
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
18842 次 |
最近记录: |