当前位置:数据库 > SQLServer >>

mssql 查询问题

只知道 某个字段里的值是'你好' 也知道在哪个数据库里 但是不知道这个值在哪个表里和字段的名字 要查询'你好' 在哪个表里 怎么查询?
补充:就是如何根据值'你好'进行遍历数据库 查到这个值所在的哪个表里

能否把vb.net 的代码贴出来? 谢谢拉
答案:如果用VB或是asp我可以实现这个功能,sql server没听说过这么作的,

不过你可以用mssql自带的功能,全文检索,你可以查一下MSSQL的文档,如何用全文检索功能
其他:create   proc   Full_Search(@string   varchar(50)) 
as 
begin 

declare   @tbname   varchar(50)   
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(50) 
  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 ')   --数据类型为字符型的字段 
  )   --第二个游标是第一个游标的嵌套游标,遍历某个表的所有字段 

  open   colroy 
  fetch   next   from   colroy   into   @colname 
  while   @@fetch_status=0 
  begin 
  
  declare   @sql   nvarchar(1000),@j   int 
  select   @sql= 'select   @i=count(1)   from   '   +@tbname   + '     where   '+   @colname+ '   like   '+ '''%'+@string+ '%''' 
  exec   sp_executesql   @sql,N'@i int output',@i=@j   output       --输出满足条件表的记录数 
  if   @j> 0 
  exec( 'select     distinct   '+@colname+ '   from   '   +@tbname   + '     where   '+   @colname+ '   like   '+ '''%'+@string+ '%''') 

  fetch   next   from   colroy   into   @colname 
  end               
  
  close   colroy 
  deallocate   colroy 

fetch   next   from   tbroy   into   @tbname 
end 
close   tbroy 
deallocate   tbroy 
end 
go

exec   Full_Search  '你好'

上一个:MSSQL的问题
下一个:MSSQL怎么给建好的表添加字段

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,