sqlserver获取数据库表结构的存储过程

原创 2015年11月21日 11:07:03

create PROCEDURE [dbo].[GetTableExplain]
    @TABLENAME varchar(100)
AS
SELECT
     表名       = Case When A.colorder=1 Then D.name Else '--'+D.name End,
     表说明     = Case When A.colorder=1 Then isnull(F.value,'') Else '' End,
     字段序号   = A.colorder,
     字段名     = A.name,
     字段说明   = isnull(G.[value],''),
     标识       = Case When COLUMNPROPERTY( A.id,A.name,'IsIdentity')=1 Then '√'Else '' End,
     主键       = Case When exists(SELECT 1 FROM sysobjects Where xtype='PK' and parent_obj=A.id and name in (
                      SELECT name FROM sysindexes WHERE indid in( SELECT indid FROM sysindexkeys WHERE id = A.id AND colid=A.colid))) then '√' else '' end,
     类型       = B.name,
     占用字节数 = A.Length,
     长度       = COLUMNPROPERTY(A.id,A.name,'PRECISION'),
     小数位数   = isnull(COLUMNPROPERTY(A.id,A.name,'Scale'),0),
     允许空     = Case When A.isnullable=1 Then '√'Else '' End,
     默认值     = isnull(E.Text,'')
 FROM
     syscolumns A
 Left Join
     systypes B
 On
     A.xusertype=B.xusertype
 Inner Join
     sysobjects D
 On
     A.id=D.id  and D.xtype='U' and  D.name<>'dtproperties'
 Left Join
     syscomments E
 on
     A.cdefault=E.id
 Left Join
 sys.extended_properties  G
 on
     A.id=G.major_id and A.colid=G.minor_id
 Left Join

 sys.extended_properties F
 On
     D.id=F.major_id and F.minor_id=0
     where d.name=@TABLENAME   --如果只查询指定表,加上此条件
 Order By
     A.id,A.colorder

java 代码初始化数据库表结构,存储过程和函数的方法

public class JdbcUtils { private final static Logger logger = LoggerFactory.getLogger(JdbcUtils....
  • boenwan
  • boenwan
  • 2017年06月17日 09:38
  • 498

MySQL导出数据库、数据库表结构、存储过程及函数

一、导出数据库     我的mysql安装目录是D:\Program Files\MySQL\MySQL Server 5.5\bin\,导出文件预计放在D:\sql\     在mysql的安装目录...

查询SQLServer2005中某个数据库中的表结构、索引、视图、存储过程、触发器以及自定义函数

(1)查询SQLServer2005中某个数据库中的表结构 SELECT 表名      = CASE WHEN A.COLORDER=1 THEN D.NAME ELSE '' E...

sqlserver表结构(含约束)复制存储过程

SQL Server 表结构(含约束)复制存储过程

MSSQL2000 获取数据库表、视图、存储过程等结构信息

1.查询数据库下所有用户表的结构信息(包括表名、字段名、类型等等)SELECT TOP 100 PERCENT --a.id, CASE WHEN a.col...

SQLServer判断数据库,表,列名,存储过程是否存在

我们可以使用系统表例如sysobjects,sys.databases等等,还可以OBJECT_ID函数; 注意:  使用 OBJECT_ID 不能查询非架构范围内的对象(如 DDL 触发器)。对于在...

sqlserver删除数据库中所有的表和存储过程

如果由于外键约束删除table失败,则先删除所有约束: --/第1步**********删除所有表的外键约束*************************/ DECLARE c1 cursor...
  • qzc1987
  • qzc1987
  • 2012年02月29日 17:45
  • 351

PowerDesigner使用教程:导出SQLServer数据库表结构到Word

为方便项目文档的编写,使用PowerDesigner将数据库表结构导出。 1、新建一个Model(Categories/Information/PhysicalData) Model na...
  • t_kong
  • t_kong
  • 2014年01月15日 16:58
  • 2411
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:sqlserver获取数据库表结构的存储过程
举报原因:
原因补充:

(最多只允许输入30个字)