Sql 批量查看字符所的表及字段
数据库中的秘密:批量查找特定字符所在的表和字段
```sql
-- 声明要查找的字符串和存储结果的变量
DECLARE @str VARCHAR(100) = '8f8el3l';
DECLARE @s VARCHAR(8000);
-- 声明一个本地游标来遍历查询结果
DECLARE tb CURSOR LOCAL
FOR
-- 查询语句,查找包含特定字符的表和字段
SELECT
S = 'IF EXISTS (SELECT 1 FROM [' + B.name + '] WHERE [' + A.name + '] LIKE ''%'' + @str + ''%'') PRINT ''所在的表及字段: [' + B.name + '].[' + A.name + ']'
FROM
syscolumns A
JOIN sysobjects B ON A.id = B.id
WHERE
B.xtype = 'U' -- 只查找用户表
AND A.status >= 0 -- 符合特定状态的列
AND A.xusertype IN (175, 239, 231, 167) -- 根据特定的xusertype过滤列类型(例如:可能是文本类型)
-- 打开游标并获取结果集的第一行数据到变量 @s 中
OPEN tb;
FETCH NEXT FROM tb INTO @s;
-- 循环执行动态SQL语句,直到没有更多结果为止
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC(@s); -- 执行动态SQL语句,打印包含特定字符串的表和字段信息
FETCH NEXT FROM tb INTO @s; -- 获取下一行数据到变量 @s 中,直到游标结束。
END
-- 关闭游标并释放资源
CLOSE tb;
DEALLOCATE tb;
```
这段代码的核心是一个游标,它遍历查询结果集并执行动态SQL语句来检查每个表和字段是否包含特定的字符串。通过这种方式,我们可以轻松地找到数据库中所有包含特定字符的表和字段。需要注意的是,这段代码适用于特定的数据库系统(如SQL Server),并且可能需要针对其他数据库系统进行适当的调整。
seo推广
- 2014年Godaddy帐号注册教程、Push接收、解析、DNS修
- Win10开启旧版托盘时钟让其符合以往的习惯
- 湖南3家微信公众账号传播恶性谣言被关停
- 想使用PE里没有的程序如何把程序打包进WinPE中
- win10预览版10041官方下载地址 win10预览版10041下载
- 本本加内存后为何还变慢了?
- Ecshop后台拿shell方法总结
- AI简单绘制超美的渐变试管图片教程
- Dreamweaver CS6怎么使用项目列表-
- 夜班配置 夜班最低配置及要求
- 客户端安装过程中提示RegCreateKeyEx失败.错误码5
- WinCfg32.exe - WinCfg32是什么进程
- VC7SecS.exe是什么进程.有什么用
- css3 条纹化和透明化表格Firefox下测试成功
- MirOS BSD Korn Shell本地权限提升漏洞
- 上网本在播放视频时,音频出现停顿现象是什么原