提问人:Martin 提问时间:8/20/2008 最后编辑:Jon LinMartin 更新时间:2/28/2013 访问量:2247
推荐用于管理 SQL Server 2005 中的扩展属性的工具 [已关闭]
Recommend a tool to manage Extended Properties in SQL server 2005 [closed]
问:
闭。此问题不符合 Stack Overflow 准则。它目前不接受答案。
要求我们推荐或查找工具、库或最喜欢的场外资源的问题对 Stack Overflow 来说是题外话,因为它们往往会吸引固执己见的答案和垃圾邮件。相反,描述问题以及到目前为止为解决该问题所做的工作。
10年前关闭。
Server Management Studio 在管理扩展属性时往往有点不直观,所以任何人都可以推荐一个像样的工具来改善这种情况。
我想做的一件事是拥有可以应用对象的模板,从而标准化应用于对象的属性的命名法和内容。
答:
5赞
Jon Galloway
8/21/2008
#1
看看 Data Dictionary Creator,这是我编写的开源工具,可以更轻松地编辑扩展属性。它还包括以各种格式导出信息的能力。
http://www.codeplex.com/datadictionary
评论
0赞
JJS
9/23/2015
呸。这仅处理表和视图的 EP。
1赞
user2057873
2/27/2013
#2
您可能还考虑使用一个不错的可重新运行脚本来维护扩展属性。系统存储过程可以很好地完成这项工作,但它们很痛苦,所以我用自己的存储过程包装它们,以便我可以更轻松地处理它们。
例如,下面是一个面向列级扩展属性的存储过程,该过程 a) 检查扩展属性是否已存在,b) 如果存在,则删除它,然后 c) 添加它。
这使我能够维护一个干净的可重新运行(这对于自动化构建过程至关重要)的简单脚本,以添加扩展属性(仅限列级别 - 您需要修改此属性或为其他对象类型编写类似的属性)。
这是 sproc:
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo]. [snap_xpColumn_addUpdate]') AND type in (N'P', N'PC'))
DROP PROCEDURE [dbo].snap_xpColumn_addUpdate
GO
CREATE PROCEDURE [dbo].[snap_xpColumn_addUpdate]
@TableName NVARCHAR(255),
@ColumnName NVARCHAR(255),
@ExtPropName NVARCHAR(255),
@ExtPropValue NVARCHAR(255),
@SchemaOwner NVARCHAR(255) = 'dbo'
AS
IF EXISTS(SELECT * FROM ::fn_listextendedproperty(@ExtPropName,'SCHEMA',@SchemaOwner,
'TABLE',@TableName,'COLUMN',@ColumnName))
BEGIN
-- drop it
EXEC sys.sp_dropextendedproperty @name=@ExtPropName,
@level0type=N'SCHEMA',
@level0name=@SchemaOwner,
@level1type=N'TABLE',
@level1name=@TableName,
@level2type=N'COLUMN',
@level2name=@ColumnName
END
-- add it
EXEC sys.sp_addextendedproperty @name=@ExtPropName,
@value=@ExtPropValue,
@level0type=N'SCHEMA',
@level0name=@SchemaOwner,
@level1type=N'TABLE',
@level1name=@TableName,
@level2type=N'COLUMN',
@level2name=@ColumnName
GO
评论
0赞
JJS
9/23/2015
你发现nvarchar(255)总是足以容纳值吗?
评论