问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

sql server 知道一个值叫李林.如何查询这个库.里面所有与李林有关的表和字段.

发布网友 发布时间:2022-04-10 09:39

我来回答

1个回答

热心网友 时间:2022-04-10 11:09

CREATE PROCEDURE [dbo].[findStringFromSys]
-- Add the parameters for the stored procere
@StringName varchar(255)
AS
BEGIN

--1.定义需要查找的关键字。在搜索中,使用模糊搜索:LIKE '%@key_find%'
DECLARE @key_find NVARCHAR(MAX) = @StringName;--假设是找字符串"123"

--2.用游标Cursor_Table,遍历所有表
DECLARE Cursor_Table CURSOR FOR
SELECT name from sysobjects WHERE xtype = 'u' AND name <> 'dtproperties';
OPEN Cursor_Table;
DECLARE @tableName NVARCHAR(MAX);
FETCH NEXT from Cursor_Table INTO @tableName;
WHILE @@fetch_status = 0
BEGIN
DECLARE @tempSQLText NVARCHAR(MAX) = '';

--3.在表中,用游标columnCursor,遍历所有字段。注意,只遍历字符串类型的字段(列)
DECLARE columnCursor CURSOR FOR
SELECT Name FROM SysColumns WHERE ID = Object_Id( @tableName ) and
(
xtype = 35 or --text
xtype = 99 or --ntext
xtype = 167 or --varchar
xtype = 175 or --char
xtype = 231 or --nvarchar
xtype = 239 or --nchar
xtype = 241 --xml
)
OPEN columnCursor;
DECLARE @columnName NVARCHAR(MAX);
FETCH NEXT from columnCursor INTO @columnName;
WHILE @@fetch_status = 0
BEGIN

--4.在表的字段中,对每一行进行模糊搜索,并输出找到的信息。
DECLARE @DynamicSQLText NVARCHAR(MAX) = 'IF ( EXISTS ( SELECT * FROM [' + @tableName + '] WHERE [' + @columnName + '] LIKE ''%' + @key_find + '%'' ) ) BEGIN DECLARE @CurrentTableCount Bigint = ( SELECT COUNT(*) From [' + @tableName + '] ); PRINT ''Find : Table [' + @tableName + '], Column [' + @columnName + '], Row Count:'' + CAST( @CurrentTableCount AS NVARCHAR(MAX) ) + ''.''; END';
EXEC( @DynamicSQLText );
FETCH NEXT from columnCursor INTO @columnName
END
exec(@tempSQLText);
CLOSE columnCursor;
DEALLOCATE columnCursor;
FETCH NEXT from Cursor_Table INTO @tableName;
END
CLOSE Cursor_Table;
DEALLOCATE Cursor_Table;

END

GO
可以检索字符串在数据中哪个表中。数据库数据量越大,查询时间越慢。追问百度已回答过的.都测试了.在2008里面.没找到我输入的关键词

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
华为手机删除qq聊天记录还能恢复吗 曙光英雄怎么登录以前的账号,曙光英雄曙光英雄客户端在哪里下载? 曙光英雄怎么注销账号 详细注销方法分享 曙光英雄怎么注销账号-账号注销方法介绍 六大茶类之青茶知识大科普 六大茶类香气类型之青茶(乌龙茶)茶香 六大茶类之青茶 简单认识六大茶类之青茶 一文带你全面认识六大茶类中的青茶,速来围观 识茶笔记:六大茶类之青茶篇 英语作文60词:说说你爸妈每天都在做什么事情 英语作文请介绍你每天怎样去上学,你学校的位置和你周末的计划 一台电脑好几个用户名 如果想要远程连接桌面每个用户 是不是每个用户都要切换打开才能连接进去 用英文写一篇关于我喜欢的运动及我每天做运动的情况的英语作文 60字 关于一周的小菜单的英语作文 不少于80词的 关于一周每天的饮食 最后带翻译 写写你暑假每天活动的英语作文不少于六句话而且要翻译 英语作文大全生活我要写每天做了什么的英语作文 远程连接时变切换用户状态 高四党的每日英语作文求改正? 2012年乌鲁木齐市高考101中学有多少个一本 英语作文《每日活动》 一篇关于每天干什么,周末干什么,假期干什么的英语作文,不少于60词 每天锻炼身体保持健康英语作文 南阳市2019届高三一模单科分数线 需要一篇 “每天保持好心情” 的英语作文 100至200单词左右 尽量以简单易懂的语法和单词写作 乌鲁木齐市复读生有啥要求规定 我每天按时睡觉的英语作文 英语作文 写一篇60词左右的短文介绍你每天的日常生活,要求使用 have to,can it等词 2021年乌鲁木齐市高三第二次质量检测考试日期 我的每一天英语作文 远程桌面服务管理器怎么更改里面的用户 iphone5s截屏怎么截 不下心删除vivo手机的通讯录咋办 可以恢复吗? 宝宝饭后总是打嗝是咋回事? 饭后老是打嗝,是什么原因。 什么时候做家电清洗更合适? 请问钦州家电清洗去哪儿?油烟机清洗? 垫江县空调家电清洗收费标准 经济危机下如何生存 涡轮式洗衣机怎么清洗?格美洁家电清洗服务怎么样? 黔江有没有专业家电清洗店 荣昌县家电清洗店在哪里 无需网关是什么意思 无需网关会被黑吗 在同一个内网(局域网),相互之间访问不需要设网关,对吗? 局域网内更换电脑,怎样用原有的IP和MAC上网,而不需网关设置。 局域网中不设网关能互访吗? 云停车根云版直连云端,无需网关和机顶盒,主要有哪些特点? 为什么使用交换机进行通信时并不需要设置网关地址? 在局域网中,不设网关可以通信吗?为什么?