当前位置:首页 > SQL

如何根据值查找所在的表和字段

happyfhb11年前 (2015-08-15)SQL2379
摘要:DECLARE @what varchar(800) SET @what='178' --要搜索的字符串  DECLARE @sql varchar(8000)  DECLARE …
DECLARE @what varchar(800)
SET @what='178' --要搜索的字符串 

DECLARE @sql varchar(8000) 

DECLARE TableCursor CURSOR LOCAL FOR
SELECT sql='IF EXISTS ( SELECT 1 FROM ['+o.name+'] WHERE ['+c.name+'] LIKE ''%'+@what+'%'' ) PRINT ''所在的表及字段:['+o.name+'].['+c.name+']'''
FROM syscolumns c JOIN sysobjects o ON c.id=o.id 

-- 175=char 56=int 可以查 select * from sys.types 
WHERE o.xtype='U' AND c.status>=0 AND c.xusertype IN (175, 239, 231, 167 ) 

OPEN TableCursor 

FETCH NEXT FROM TableCursor INTO @sql
WHILE @@FETCH_STATUS=0
BEGIN
    EXEC( @sql )
    FETCH NEXT FROM TableCursor INTO @sql
END 

CLOSE TableCursor 

-- 删除游标引用
DEALLOCATE TableCursor



扫描二维码推送至手机访问。

版权声明:本文由海海日记-冯海滨博客发布,如需转载请注明出处。

本文链接:http://www.fenghaibin.com/?id=1192

“如何根据值查找所在的表和字段” 的相关文章

sql trim()函数去掉两头空格

1.sql trim()函数去掉两头空格sql语法中没有直接去除两头空格的函数,但有ltrim()去除左空格rtrim()去除右空格。合起来用就是sql的trim()函数,即select ltrim(rtrim(UsrName))2.distinct 选择多列,其中一列不能重复,其他列取最大值。Go…

sql2000 CDkey 万用的sql2000 cdkey

H6TWQ-TQQM8-HXJYG-D69F7-R84VM…

查看SQL Server版本号(2005 & 2008)

 方法一: select serverproperty('productversion') ,serverproperty('productlevel') ,serverproperty('edition') 输出:…

使用sql server management studio 2008 连接数据库,无法查看数据库,提示 无法为该请求检索数据 错误916

使用sql server management studio 2008 连接数据库,无法查看数据库,提示 无法为该请求检索数据 错误916

今日使用sql server management studio 2008 连接远程数据库,可以链接上,但是无法查看自己的数据库,点击数据库后,提示 无法为该请求检索数据 错误916 解决方法如下点击左侧的数据库,然后到右侧的 “名称”注意 如果点击 没有出现对象自愿管理器 请按F7  然…

sql2008 不允许所请求的注册表访问权

百度 谷歌都照了也没有答案。 不允许访问大部分出在win7下 非管理员权限 获取注册表。其实解决方案很简单1. 右键使用管理员打开2. 自己做一个小程序 启动时 先获取 管理员权限 然后 在通过那个程序打开sql2008 可以用 pross.open 这个函数。就继承了 管理员权限就ok了。…

sqlserver 数据库查看索引和创建索引

创建索引:create clustered Index 索引名 on 表(列名)查看索引:sp_helpindex 表 …

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。