设为首页收藏本站

EPS数据狗论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1174|回复: 0

sqlserver建表及注释

[复制链接]

17

主题

185

金钱

272

积分

入门用户

发表于 2019-10-24 13:48:09 | 显示全部楼层 |阅读模式
  1. --**********************************************创建表********************************************************************************************************************
  2. create table sys_user(
  3.     id          int              identity(1,1)  primary key not null,     --id主键 自增长
  4.     loginName   nvarchar(50)     NOT NULL UNIQUE,                         --登录用户名
  5.     password    nvarchar(50)     NOT NULL ,                               --登录密码
  6.     email       varchar(255)     NOT NULL UNIQUE,                         --用户邮箱
  7.     createTime  datetime default CONVERT(varchar(100), GETDATE(), 20),    --用户创建时间
  8.     code        varchar(255) ,                                            --'激活码'
  9.     state       int              NOT NULL default 0 ,                     --用户激活状态:0表示未激活,1表示激活
  10.     nstatusid   int default 1                                             --用户状态 0无效 1有效
  11. );


  12. --**********************************************给表和列添加注释***********************************************************************************************************
  13. -- 添加表注释  execute sp_addextendedproperty    'MS_Description','注释内容',  'user','dbo','table','表名称',null,null;
  14. -- 修改表注释  execute sp_updateextendedproperty 'MS_Description','注释内容1', 'user','dbo','table','表名称',null,null;
  15. -- 删除表注释  execute sp_dropextendedproperty   'MS_Description',             'user','dbo','table','表名称',null,null;

  16. --字段添加注释 execute sp_addextendedproperty    'MS_Description','注释内容',  'user','dbo','table','表名','column','字段名';
  17. --修改字段注释 execute sp_updateextendedproperty 'MS_Description','注释内容1', 'user','dbo','table','表名','column','字段名';
  18. --删除字段注释 execute sp_dropextendedproperty   'MS_Description',             'user','dbo','table','表名','column','字段名';
  19. --<!--下面的写法和上面的注释的是一个意思-->
  20. EXEC sp_addextendedproperty N'MS_Description', N'用户登录表'   , N'SCHEMA', N'dbo',N'TABLE', N'sys_user';
  21. EXEC sp_addextendedproperty N'MS_Description', N'id主键 自增长', N'SCHEMA', N'dbo',N'TABLE', N'sys_user', N'COLUMN', N'id';
  22. EXEC sp_addextendedproperty N'MS_Description', N'登录用户名'   , N'SCHEMA', N'dbo',N'TABLE', N'sys_user', N'COLUMN', N'loginName';
  23. EXEC sp_addextendedproperty N'MS_Description', N'登录密码'     , N'SCHEMA', N'dbo',N'TABLE', N'sys_user', N'COLUMN', N'password';
  24. EXEC sp_addextendedproperty N'MS_Description', N'用户邮箱'     , N'SCHEMA', N'dbo',N'TABLE', N'sys_user', N'COLUMN', N'email';
  25. EXEC sp_addextendedproperty N'MS_Description', N'用户创建时间' , N'SCHEMA', N'dbo',N'TABLE', N'sys_user', N'COLUMN', N'createTime';
  26. EXEC sp_addextendedproperty N'MS_Description', N'激活码'       , N'SCHEMA', N'dbo',N'TABLE', N'sys_user', N'COLUMN', N'code';
  27. EXEC sp_addextendedproperty N'MS_Description', N'用户激活状态:0表示未激活,1表示激活', N'SCHEMA', N'dbo',N'TABLE', N'sys_user', N'COLUMN', N'state';
  28. EXEC sp_addextendedproperty N'MS_Description', N'用户状态 0无效 1有效', N'SCHEMA', N'dbo',N'TABLE', N'sys_user', N'COLUMN', N'nstatusid';




  29. --**********************************************查看表简单信息*************************************************************************************************************
  30.   SELECT
  31. A.name AS 表名,
  32. B.name AS 表字段,
  33. C.value AS 字段注释
  34. FROM sys.tables A
  35. INNER JOIN sys.columns B ON B.object_id = A.object_id
  36. LEFT JOIN sys.extended_properties C ON C.major_id = B.object_id AND C.minor_id = B.column_id
  37. WHERE A.name = 'sys_user';--表名称
  38. --**********************************************查看表详细信息**************************************************************************************************************
  39. --USE 库名;
  40. SELECT
  41.      表名       = Case When A.colorder=1 Then D.name Else '' End,
  42.      表说明     = Case When A.colorder=1 Then isnull(F.value,'') Else '' End,
  43.      字段序号   = A.colorder,
  44.      字段名     = A.name,
  45.      类型       = B.name,
  46.      字段说明   = isnull(G.[value],''),
  47.      标识       = Case When COLUMNPROPERTY( A.id,A.name,'IsIdentity')=1 Then '√'Else '' End,
  48.      主键       = 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,
  49.      占用字节数 = A.Length,
  50.      长度       = COLUMNPROPERTY(A.id,A.name,'PRECISION'),
  51.      小数位数   = isnull(COLUMNPROPERTY(A.id,A.name,'Scale'),0),
  52.      允许空     = Case When A.isnullable=1 Then '√'Else '' End,
  53.      默认值     = isnull(E.Text,'')
  54. FROM
  55.      syscolumns A  Left Join systypes B                    On A.xusertype=B.xusertype
  56.                   Inner Join sysobjects D                On A.id=D.id  and D.xtype='U' and  D.name<>'dtproperties'
  57.                    Left Join syscomments E                On A.cdefault=E.id
  58.                    Left Join sys.extended_properties  G On A.id=G.major_id and A.colid=G.minor_id
  59.                    Left Join sys.extended_properties F  On D.id=F.major_id and F.minor_id=0
  60. where d.name='sys_user'    --如果只查询指定表,加上此条件
  61. Order By
  62.      A.id,A.colorder;
复制代码

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

客服中心
关闭
在线时间:
周一~周五
8:30-17:30
QQ群:
653541906
联系电话:
010-85786021-8017
在线咨询
客服中心

意见反馈|网站地图|手机版|小黑屋|EPS数据狗论坛 ( 京ICP备09019565号-3 )   

Powered by BFIT! X3.4

© 2008-2028 BFIT Inc.

快速回复 返回顶部 返回列表