例如,某个视图中用到了表T1,T2,以及视图V1
那一个是
T1
T2
V1
就像SQL 2005中查看依赖关系一样,
但是目前我想用SQL语句来实现,请问怎么做?

解决方案 »

  1.   

    to 邹老大:
    我一开始也是用这个啊,但是这样得到的结果和用SQL 2005 Managment查看依赖关系的结果很不一样啊,有很多漏掉的
      

  2.   

    都在胡说八道,在当前数据库中都有相应的系统表,如:sysobjects,syscolumns等,详细记录了当前数据库的对象,其中包括约束和外键等,自己一查就知道
      

  3.   

    楼上好激动哦
    不过
    对象之间的关系是 sys.sql_dependencies (sysdepends) 中记录的.
    对象的结构才是 sysobjects,syscolumns 描述的而 sp_depends, 联机帮助上写得很清楚, 其作用是:
    显示有关数据库对象依赖关系的信息,例如:依赖于表或视图的视图和过程,以及视图或过程所依赖的表和视图。不报告对当前数据库以外对象的引用。
      

  4.   

    至于楼主的问题, 想查到那么细的话, 当然你得自己动手. 不外乎是从 sys.sql_dependencies 取对象依赖关系, 然后从对象结构定义表中获取结构详情而已.
    楼主可以用事件探察器跟踪一下 "SQL 2005中查看依赖关系" 这个过程产生的 T-SQL, 自己分析一下吧, 要想完全实现那样的效果, 不可能只要一两个简单的T-SQL就可以的