最近在做一个知名的erp软件的扩展程序,想要定位某张表,操作里边的数据,可是死活找不到,数百张表,虽然有数据字典,但只想不对,总之,问题是:我已经录入数据了,但是想操作那张表,可是连表都找不到,所以我想根据,我刚刚录入的一行数据来找到这张表,求对整个数据查询,来找到这一行数据的查询语句

解决方案 »

  1.   

    是SQL Server吗?如果是可以根据profile跟踪一下,然后看看操作的是那张表
      

  2.   

    http://blog.csdn.net/fredrickhu/article/details/4574197这个可以参考下 不知道有没有用?
      

  3.   


    SELECT 'SELECT top 4 from '+NAME FROM sysobjects WHERE xtype='U'这个是查的数据库中用户建立全部数据表中前4条数据,你看看哪个是你想要的,这个就是会花掉你一些时候来核对
      

  4.   

    if   exists   (select   *   from   dbo.sysobjects   where   id   =   object_id(N'[dbo].[p_search]')   and   OBJECTPROPERTY(id,   N'IsProcedure')   =   1)   
    drop   procedure   [dbo].[p_search]   
    GO   
        
    /*--搜索某个字符串在那个表的那个字段中  */
        
       create   proc   p_search   
    @str   Nvarchar(1000)   --要搜索的字符串   
    as   
    if   @str=''   return   
        
    declare   @s   Nvarchar(4000)   
    create   table   #t(表名   sysname,字段名   sysname)   
        
    declare   tb   cursor   local   for   
    select   s='if   exists(select   1   from   ['+replace(b.name,']',']]')+']   where   ['+a.name+']   like   N''%'+@str+'%'')   
    print   ''所在的表及字段:   ['+b.name+'].['+a.name+']'''   
    from   syscolumns   a   join   sysobjects   b   on   a.id=b.id   
    where   b.xtype='U'   and   a.status>=0   
    and   a.xtype   in(175,239,99,35,231,167)   
    open   tb   
    fetch   next   from   tb   into   @s   
    while   @@fetch_status=0   
    begin   
    exec(@s)   
    fetch   next   from   tb   into   @s   
    end   
    close   tb   
    deallocate   tb   
    这是一位大神的博客里的,虽然速度慢,但实现全库查询一个某表里一个字段的功能了