添加列描述
有谁知道如何通过运行脚本向SQL Server列添加描述?我知道您可以在使用SQL Server Management Studio创建列时添加说明。添加列描述
我该如何编写脚本,以便我的SQL脚本创建列时,还添加了列的说明?
我想说你可能会想用sp_addextendedproperty存储过程来做到这一点。
微软上有一些很好的文档,但是你也可以看看这个链接:
试试这个:
EXEC sp_addextendedproperty
@name = N'MS_Description', @value = 'Hey, here is my description!',
@level0type = N'Schema', @level0name = 'yourschema',
@level1type = N'Table', @level1name = 'YourTable',
@level2type = N'Column', @level2name = 'yourColumn';
GO
当我谈到SQL时,我有点白痴,只要我需要它就可以学到任何我需要的东西,所以当我问这个荒谬的问题时请原谅我。我如何弄清楚“yourschema”是什么? – EJC 2010-09-20 18:22:41
@EJC,它很可能是“dbo” – 2010-09-20 18:25:30
它可能是'dbo',这是创建表时的默认值。通常你的表名将如下所示:“{something} .tableName”。 {soemthing}是模式。 – 2010-09-20 18:25:52
EXEC sys.sp_addextendedproperty @name = N'MS_Description',
@value = N'extended description',
@level0type = N'SCHEMA',
@level0name = N'dbo',
@level1type = N'TABLE',
@level1name = N'Table_1',
@level2type = N'COLUMN',
@level2name = N'asdf'
创建表脚本[DBO]。 [Table_1]
这对我有用。相关的论点用小箭头表示。
EXEC sys.sp_addextendedproperty
@name=N'MS_Description'
,@value=N'Here is my description!' --<<<<
,@level0type=N'SCHEMA'
,@level0name=N'dbo'
,@level1type=N'TABLE'
,@level1name=N'TABLE_NAME' --<<<<
,@level2type=N'COLUMN'
,@level2name=N'FIELD_NAME' --<<<<
此答案使用正确的'名称'值(MS_Description)使描述出现在表设计器中窗口。这并不是完全必要的,但它是方便的,并且是吸引人们关注列上扩展属性存在的好方法。 – AperioOculus 2015-05-01 14:18:32
在MS SQL Server Management Studio中10.0.55,最简单的方法是:
- 显示在对象资源管理器窗口表中的列
- 右键点击感兴趣的列并点击“修改”选项
- 查看“列属性”窗口(在我的GUI的右下角)\
- 查看“表设计器”子部分
- 修改值“说明”行
- 单击列修改窗口右上角的“X” /标签
- 回答“Y”时,它说,将更改应用于
如果然后在对象资源管理器窗口中右键单击您的表并单击属性,然后单击“扩展属性”,您应该看到您的评论。
请注意,如果您为该表执行“脚本表另存为”命令,则上面的列“描述”仍然不会显示为该列的注释。相反,它会在创建表后显示额外的sp_addextendedproperty调用。平庸。
嗯,这是一个传统的数据库,列名对5到6年前写这些列的人来说是描述性的,但它们对我来说并没有什么意义。有很多业务规则与列一起出现,因此只需对该列存在的原因进行简单描述就可以了。我想我们评论我们的代码为什么我们不应该评论数据库? – EJC 2010-09-20 18:18:01
Gotcha。了解。 – 2010-09-20 18:19:36