sql创建表及添加描述脚本

在日常开发中,可能会使用到代码生成器,在实体上有可能会使用到描述信息,那么如何在创建表的时候通过脚本添加描述信息呢?

接下来我们看一下,具体的代码:

 

--附件管理
create table Accessory
(
Id int not null identity(1,1) primary key,
PageKey nvarchar(100) not null,--页面主键
RecordId nvarchar(255) not null,--记录编号
GuidName nvarchar(255),--guid
[FileName] nvarchar(255),--文件名
ExtendName nvarchar(50),--扩展名
Content nvarchar(max),--内容
SortNo int,--排序
Remark nvarchar(max),--备注
CreateUserName nvarchar(100),--创建人
CreateUserID bigint,--创建人ID
CreateTime datetime,--创建时间
ModifyUserName nvarchar(100),--修改人
ModifyUserID bigint,--修改人ID
ModifyTime datetime--修改时间
)

--为表添加描述信息
EXECUTE sp_addextendedproperty N'TableDescription', '附件管理表', N'user', N'dbo', N'table', N'Accessory', NULL, NULL ;
--为字段添加描述信息
EXECUTE sp_addextendedproperty N'MS_Description', '页面主键', N'user', N'dbo', N'table', N'Accessory', N'column', N'PageKey';
EXECUTE sp_addextendedproperty N'MS_Description', '记录编号', N'user', N'dbo', N'table', N'Accessory', N'column', N'RecordId';
EXECUTE sp_addextendedproperty N'MS_Description', 'Guid名称', N'user', N'dbo', N'table', N'Accessory', N'column', N'GuidName';
EXECUTE sp_addextendedproperty N'MS_Description', '文件名', N'user', N'dbo', N'table', N'Accessory', N'column', N'FileName';
EXECUTE sp_addextendedproperty N'MS_Description', '扩展名', N'user', N'dbo', N'table', N'Accessory', N'column', N'ExtendName';
EXECUTE sp_addextendedproperty N'MS_Description', '内容', N'user', N'dbo', N'table', N'Accessory', N'column', N'Content';
EXECUTE sp_addextendedproperty N'MS_Description', '排序', N'user', N'dbo', N'table', N'Accessory', N'column', N'SortNo';
EXECUTE sp_addextendedproperty N'MS_Description', '备注', N'user', N'dbo', N'table', N'Accessory', N'column', N'Remark';
EXECUTE sp_addextendedproperty N'MS_Description', '创建人', N'user', N'dbo', N'table', N'Accessory', N'column', N'CreateUserName';
EXECUTE sp_addextendedproperty N'MS_Description', '创建人编号', N'user', N'dbo', N'table', N'Accessory', N'column', N'CreateUserID';
EXECUTE sp_addextendedproperty N'MS_Description', '创建时间', N'user', N'dbo', N'table', N'Accessory', N'column', N'CreateTime';
EXECUTE sp_addextendedproperty N'MS_Description', '修改人', N'user', N'dbo', N'table', N'Accessory', N'column', N'ModifyUserName';
EXECUTE sp_addextendedproperty N'MS_Description', '修改人编号', N'user', N'dbo', N'table', N'Accessory', N'column', N'ModifyUserID';
EXECUTE sp_addextendedproperty N'MS_Description', '修改时间', N'user', N'dbo', N'table', N'Accessory', N'column', N'ModifyTime';

返回代码值

0(成功)或 1(失败)

 

那么详细的语法又是怎么样的呢?

sp_addextendedproperty
    [ @name = ] { 'property_name' }
    [ , [ @value = ] { 'value' } 
        [ , [ @level0type = ] { 'level0_object_type' } 
                    , [ @level0name = ] { 'level0_object_name' } 
                [ , [ @level1type = ] { 'level1_object_type' } 
                                    , [ @level1name = ] { 'level1_object_name' } 
                        [ , [ @level2type = ] { 'level2_object_type' } 
                                                    , [ @level2name = ] { 'level2_object_name' } 
                        ] 
                ]
        ] 
    ] 

参数

[ @name ] = { 'property_name' }

要添加的属性的名称。property_name 的数据类型为 sysname,不能为 NULL。名称还可以包括空格或非字母数字字符串以及二进制值。

[ @value = ] { 'value' }

要与属性关联的值。value 的数据类型为 sql_variant,默认值为 NULL。value 的大小不能超过 7,500 个字节。

[ @level0type = ] { 'level0_object_type' }

级别 0 对象的类型。level0_object_type 的数据类型为 varchar(128),默认值为 NULL。

有效的输入包括:ASSEMBLY、CONTRACT、EVENT NOTIFICATION、FILEGROUP、MESSAGE TYPE、PARTITION FUNCTION、PARTITION SCHEME、REMOTE SERVICE BINDING、ROUTE、SCHEMA、SERVICE、USER、TRIGGER、TYPE 和 NULL。

posted @ 2017-11-14 14:44  Jeff-Lai  阅读(1013)  评论(0)    收藏  举报