永发信息网

sql 2000在数据库所有表的所有列中查找一个字符串

答案:2  悬赏:70  手机版
解决时间 2021-03-21 23:52
sql 2000在数据库所有表的所有列中查找一个字符串
最佳答案
create procedure Findeyes
as
declare @ls_tblname varchar(100)
declare @ls_colname varchar(100)
declare @ls_sql varchar(4000)
declare @li_count integer

create table #tmp_tbl1
(
exists_count integer
)

create table #result
(
tbl_name varchar(100),
col_name varchar(100)
)

declare c1 cursor for
select sysobjects.name as table_name,syscolumns.name as col_name from sysobjects a,syscolumns b where a.id = b.id and b.xtype in (35,99,167,231)

open c1
fetch c1 into @as_tblname,@as_colname
while 1 = 1 begin
if @@sqlstatus = 2 begin
break
end

select @ls_sql = "select count(1) from " + @as_tblname + " where " +@as_colname +" like '%eyes%'"
insert into #tmp_tbl1 exec @ls_sql --搜索含eyes的字段

select @li_count = exists_count from #tmp_tbl1

if @li_count > 0 begin
insert into #result select @as_tblname,@as_colname --把含有该字段的表和字段名插到临时表去
end

end
close c1
select tbl_name,col_name from #result order by tbl_name,col_name --把含有该字段的表和字段名选出来

执行这个 procedure 在查询分析器里:exec Findeyes
全部回答
查到是可以查,很慢的,用游标
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
没有断奶的小猫怎么养,没断奶的小猫要怎么养
- Mum, can I help you with the cleaning?&n
2016亚洲薄鳌论坛什么时候召开
优体健身(凤凰山旗舰店)地址有知道的么?有点
沭阳东方花园小区在哪里怎么样
剑灵我都五十五级了在大漠打不出来灵气 那我
洗手间的门锁不小心反锁了,怎么开锁
广东省农村信用合作社atm地址在什么地方,我
方法掌握好是什么意思?
聚乙二醇200 400 等后的数字是什么意思
男友和我分,但是他不删我QQ,还看我的动态什
关于我国地理位置的叙述,正确的是A.东、南、
什么是前置usb3.0
野沙参图片
人的一生中会有多少朋友?
推荐资讯
华侨华人亚裔各是什么意思
日产轩逸高配版实用还是传祺gs4实用?两者相
关于辣条的幽默句子,辣条下山接下去,搞笑的句
中源汽车装饰怎么去啊,有知道地址的么
和哪家公司合作做微信公众平台加盟好?
三顾茅庐的人是谁,三顾茅庐中看出刘备是个怎
苹果6 64G 金怎么样
河南话花椒我什么意思,河南话中花椒什么意思
三星s6怎么关安全模式?谢谢!
自己驾车从郑州到三峡大坝怎么走
取一条活鲫鱼,放在一个玻璃缸中,如下图观察
八字文艺唯美句子,求一些唯美文艺的文字,句
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?