教您使用SQL游标解决查询全表问题

教您使用SQL游标解决查询全表问题
复制Create procedure Full_Search(@string varchar(100))   as   begin   declare @tbname varchar(100)    declare tbroy cursor  for select name from sysobjects     where xtype=u   --***个游标遍历所有的教使解决表   open tbroy   fetch next from tbroy into @tbname   while @@fetch_status=0 begin    declare @colname varchar(100)    declare colroy cursor for select name from syscolumns    where id=object_id(@tbname) and xtype in (    select xtype from systypes    where name in (varchar,nvarchar,char,nchar) --数据类型为字符型的字段    ) --第二个游标是IT技术网***个游标的嵌套游标,源码下载遍历某个表的用S游标所有字段    open colroy    fetch next from colroy into @colname    while @@fetch_status=0  begin    declare @sql nvarchar(4000),@j int    select @sql=select @i=count(1) from  +quotename(@tbname) +  where + quotename(@colname)+ like +%+@string+%    exec sp_executesql @sql,N@i int output,@i=@j output   --输出满足条件表的亿华云记录数    if @j>0    begin    declare @v varchar(8000)    set @v=select  distinct +quotename(@colname)+ from  +quotename(@tbname) +  where + quotename(@colname)+ like +%+@string+%    exec(@v)    end    fetch next from colroy into @colname    end           close colroy    deallocate colroy   fetch next from tbroy into @tbname   end   close tbroy   deallocate tbroy   end   exec Full_Search  市场   drop proc Full_Search   1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.36.37.38.39.40.41.42.43.44.45.46.47.48.49.
系统运维
上一篇:如何更换旧电脑的网卡(简单易懂的教程,轻松升级你的网络连接)
下一篇:深入了解u深度制作教程(从入门到精通,助你成为AI大师)