用于分析数据库结构的几种方法

1、生成数据表文档
 可以使用sp_MShelpcolumns,例如:

None.gif exec  sp_MShelpcolumns N ' [dbo].[fy] ' @orderby   =   ' id '

2、生成存储过程、自定义函数和视图的文档

None.gif   select  a.id,a. text ,b.name,b.xtype   from  dbo.syscomments a  join  sysobjects b  on  a.id = b.id 
None.gif 
where  b.xtype  in  ( ' p ' , ' v ' , ' FN ' and  b.status > 0  

3、生成数据表文档的SQL语句

 1 None.gif SELECT  ( CASE   WHEN  a.colorder  =   1   THEN  d.name  ELSE   ''   END ) N ' TableName ' ,
 2 None.gif    a.colorder N ' SortID ' , a.name N ' ColumnName ' ,
 3 None.gif    ( CASE   WHEN   COLUMNPROPERTY (a.id,a.name,  ' IsIdentity ' =   1   THEN   ' '   ELSE   ''   END ) N ' IsIdentity ' ,
 4 None.gif    ( CASE   WHEN  (
 5 None.gif         SELECT   COUNT ( * FROM  sysobjects 
 6 None.gif         WHERE  (name  IN  (
 7 None.gif                 SELECT  name  FROM  sysindexes 
 8 None.gif                 WHERE  (id  =  a.id) 
 9 None.gif                     AND  (indid  IN (
10 None.gif                             SELECT  indid
11 None.gif                                FROM  sysindexkeys
12 None.gif                                WHERE  (id  =  a.id) 
13 None.gif                                 AND  (colid  IN (
14 None.gif                                         SELECT  colid  FROM  syscolumns
15 None.gif                                         WHERE  (id  =  a.id) 
16 None.gif                                         AND  (name  =  a.name
17 None.gif                                          )
18 None.gif                                     )
19 None.gif                                   )
20 None.gif                            )
21 None.gif                         )
22 None.gif                )
23 None.gif        ) 
24 None.gif         AND  (xtype  =   ' PK ' ))  =   0  
25 None.gif     THEN   ''   ELSE   ' '   END ) N ' IsKey '
26 None.gif    b.name N ' ColType '
27 None.gif    a.length N ' Bits '
28 None.gif     COLUMNPROPERTY (a.id, a.name,  ' PRECISION ' AS  N ' Length '
29 None.gif     IsNull ( COLUMNPROPERTY (a.id, a.name,  ' Scale ' ),  0 AS  N ' Scale '
30 None.gif    ( CASE   WHEN  a.isnullable  =   1   THEN   ' '   ELSE   ''   END ) N ' IsNullAble '
31 None.gif     isnull (e. text '' ) N ' Default ' ,
32 None.gif     isnull (g. [ value ] '' AS  N ' Description '
33 None.gif
34 None.gif FROM      syscolumns a  LEFT   JOIN
35 None.gif    systypes b  ON  a.xtype  =  b.xusertype  INNER   JOIN
36 None.gif    sysobjects d  ON  a.id  =  d .id  AND  d .xtype  =   ' U '   LEFT   JOIN
37 None.gif    syscomments e  ON  a.cdefault  =  e.id  LEFT   JOIN
38 None.gif    sysproperties g  ON  a.id  =  g.id  AND  a.colid  =  g.smallid
39 None.gif ORDER   BY   object_name (a.id), a.colorder
40 None.gif
41 None.gif


 

转载于:https://www.cnblogs.com/happy555/archive/2006/12/29/607267.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值