预览模式: 普通 | 列表

由一个值查找到包含该值的数据库具体的某个表及字段名。

 

SQL代码
  1. declare @cloumns varchar(40)  
  2. declare @tablename varchar(40)  
  3. declare @str varchar(40)  
  4. declare @counts int  
  5. declare @sql nvarchar(2000)  
  6. declare MyCursor Cursor For   
  7. Select a.name as Columns, b.name as TableName from syscolumns a,sysobjects b,systypes c   
  8. where a.id = b.id  
  9. and b.type = 'U'   
  10. and a.xtype=c.xtype  
  11. and c.name like '%char%'  
  12. set @str='张三'  
  13. Open MyCursor  
  14. Fetch next From MyCursor Into @cloumns,@tablename  
  15. While(@@Fetch_Status = 0)  
  16. Begin  
  17.  set @sql='select  @tmp_counts=count(*) from ' +@tablename+ ' where ' +@cloumns+' = ''' +@str+ ''''  
  18. execute sp_executesql  @sql,N'@tmp_counts int out',@counts out  
  19.  if @counts>0  
  20.  begin  
  21.  print '表名为:'+@tablename+',字段名为'+@cloumns  
  22.  end  
  23. Fetch next From MyCursor Into @cloumns,@tablename  
  24. End  
  25. Close MyCursor  
  26. Deallocate MyCursor  

 

Tags: 字段 数据库 数据表

分类:数据 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 792