对整个数据库全部表的字段进行文本查找,返回的结果为字段名、表名、出现的次数
CREATE PROCEDURE Search_tablename
@strword varchar(50)
AS
BEGIN
set nocount on
create table #result
(
OID int not null identity,
ziduan varchar(50) null,
tablename varchar(50) null,
ziduanleixing varchar(50) null,
icount int null
)
declare @count int
,@ziduanname varchar(50)
,@tablename varchar(50)
,@ziduanleixing varchar(50)
,@sql Nvarchar(800)
declare cur_LocationList cursor fast_forward for
select a.name ,b.name,c.name from syscolumns a
inner join sysobjects b
on a.id=b.id and b.xtype='u' and lower(a.name) not in('desc','order','top','left','bottom','right')
inner join systypes c
on a.xtype=c.xusertype
and c.name in('varchar','char','nvarchar','nchar','decimal','float','int','money')
open cur_LocationList
fetch next from cur_LocationList into @ziduanname,@tablename,@ziduanleixing
while @@fetch_status = 0
begin
set @count=0
if @ziduanleixing='money'
set @sql='select @a=count(*) from ['+@tablename+'] where convert(varchar(20),['+@ziduanname+']) like ''%'+@strword+'%'''
else
set @sql='select @a=count(*) from ['+@tablename+'] where ['+@ziduanname+'] like ''%'+@strword+'%'''
--print @sql
exec sp_executeSql @sql,N'@a int output',@count output
--print @count
if @count>=1
begin
insert into #result(ziduan,tablename,icount,ziduanleixing) values (@ziduanname,@tablename,@count,@ziduanleixing)
end
fetch next from cur_LocationList into @ziduanname,@tablename,@ziduanleixing
end
close cur_LocationList
deallocate cur_LocationList
select ziduan as "字段名",tablename as "表名",icount as "出现次数",ziduanleixing as "字段类型" from #result
order by "表名","字段名"
drop table #result
set nocount off
END
GO
exec Search_tablename '欲查找值'
分享到:
相关推荐
### 整个数据库内字符串搜索 #### 知识点概览 本文将详细介绍如何在SQL Server数据库中实现全库范围内的字符串搜索功能。通过自定义存储过程的方式,我们可以有效地搜索数据库中的所有表,并针对每一张表中的指定...
在IT领域,数据库不仅仅是用来存储结构化...综上所述,从数据库读取图片文件是一个涉及数据存储、查询、安全性、性能优化等多个环节的复杂过程。理解并掌握这些知识点对于构建高效、安全的图像存储和检索系统至关重要。
在整个网站的搜索(数据库提取)过程中,我们主要涉及两个核心领域:数据库管理和网站搜索技术。以下是对这两个领域的详细解释: 1. **数据库管理**: - 数据库是存储和组织数据的系统,它允许高效地检索、更新和...
全数据库搜索工具实现了这一功能,允许用户一次性搜索整个数据库,而不仅仅是单个表或列。 数据查找是工具的核心功能。它允许用户输入关键字或短语,然后在数据库的所有表和字段中进行全文搜索。这不仅包括明文数据...
- **AND B.TEXT LIKE '%' + 'my_table_nm' + '%'**:搜索存储过程定义中的文本,找出包含特定表名`my_table_nm`的过程。 #### 3. **更深入的技术细节** - **TEXT字段解析**:`SYSCOMMENTS`表中的`TEXT`字段包含...
列式数据库作为一种新型的数据存储方式,通过改变数据的存储结构,实现了对大量数据进行快速查询和分析的能力。本文将深入探讨列式数据库的存储原理及其优势。 #### 二、传统数据库的行式存储 传统的关系型数据库...
本文将深入探讨存储过程和视图的概念,以及如何利用特定工具进行管理和搜索。 首先,让我们理解什么是存储过程。存储过程是预编译的SQL语句集合,它封装了一系列的数据库操作,可以在需要时执行。在SQL Server 2012...
编辑简历,尤其是涉及图片的更改,需要先从数据库中取出原始图片数据,进行修改后,再更新回数据库。这同样涉及到读取和写入二进制数据的过程。在某些情况下,如果只需要更新部分信息,可以使用SQL的`UPDATE`语句只...
有一些第三方工具,如Red Gate的SQL Search,提供了更强大的搜索功能,可以直接在数据库的整个代码库中搜索,包括存储过程、触发器和函数等。 5. **源代码控制**: 如果你的存储过程在源代码控制系统中管理,如...
全文搜索引擎的核心思想是利用存储过程自动识别数据库的逻辑模式,对整个数据库系统中的数据进行匹配。当找到与关键词匹配的表和列时,返回表名和列名的集合,以便后续的程序(如服务器端的存储过程或客户端应用程序...
该存储过程名为 SP_FindValueInDB,它可以在整个数据库中搜索指定的关键字,并返回搜索结果。 存储过程的主要逻辑是使用游标遍历数据库中的所有表和列,然后使用动态 SQL 语句来构建搜索语句。该搜索语句使用 LIKE ...
整个数据库课程设计报告不仅体现了数据库理论与实践的结合,还展示了从需求分析到系统实现的全过程。对于学习数据库的学生而言,这样的项目不仅加深了对数据库设计原理的理解,还锻炼了将理论知识应用于解决实际问题...
在IT行业中,数据库管理是至关重要的任务之一,尤其是在企业级应用中。SQL(Structured Query Language)数据库因其高效、稳定...在实际使用过程中,结合正确的操作流程和注意事项,可以确保数据库管理工作的顺利进行。
对于信息管理,数据库软件提供了高效的数据存储和检索机制,便于进行数据分类、搜索、报表生成等操作。例如,可以构建一个员工信息管理系统,通过数据库来存储员工的基本信息、薪资记录、考勤数据等。在这样的系统中...
- **搜索数据库**:用于存储搜索索引和配置信息。 - **定时作业数据库**:记录SharePoint执行的各种后台任务的信息。 #### 三、文件操作数据库通讯协议 文档中提到的“File Operations Database Communications ...
- 需要处理大量数据并进行复杂查询的应用场景,如大数据分析平台、搜索引擎等。 通过以上分析,我们可以清楚地了解到数据库系统的基本概念、使用数据库系统的好处、文件系统与数据库系统的区别与联系以及它们各自...
在这个"ASP+Ajax 搜索提示应用实例"中,我们将探讨如何结合ASP(Active Server Pages)和Ajax来实现一个具有搜索提示功能的应用,同时这个应用还与数据库进行了交互,显示了关键词和搜索结果数量。 首先,让我们...
在IT领域,构建一个搜索引擎是复杂且技术性强的工作,但我们可以简化这个过程,模仿百度的搜索功能来创建一个基础的搜索系统。这个项目利用了Java、JSP(JavaServer Pages)以及Ajax(Asynchronous JavaScript and ...
在课程设计中,学生们会学习如何创建数据库架构,定义表、视图、索引等数据库对象,以及如何使用Transact-SQL(T-SQL)进行数据操作和存储过程的编写。 SQL语言原理是理解数据库管理系统的基础。SQL(Structured ...