2009-07-21 34 views
10

我们目前正在使用SQL Server 2000,但不久将移至2008年。我正在寻找将相关存储过程分组到文件夹的方法。 SQL Server 2000似乎没有这种能力,从我的搜索看,它看起来像2008也不是。这似乎是大多数用户想要的基本功能。将跨多个项目共享的所有通用存储过程放在一个文件夹中,并将特定的过程放在另一个文件夹中是没有意义的?SQL Server存储过程文件夹/分组

看来大多数开发人员现在这样做的方式是使用ID_SPNAME语法中的某些语法并对它们进行排序。

回答

8

在UI中按类型对特效和功能进行分组将很好,但Management Studio无法做到这一点。使用SQL Server 2000,我已经完成了你的建议(用分组代码和排序为对象添加前缀)。在2005年和2008年,考虑创建模式以达到相同的目的,并将这些对象分组。请注意,对象名称的前缀是UI中的模式名称。

CREATE SCHEMA ShoppingCart AUTHORIZATION Joe 
    CREATE PROCEDURE AddItem ... 

...将在UI中显示为ShoppingCart.AddItem

Schemas in Sql Server 2008

8

最常见的方式做到这一点(在SQL 2005/2008)是利用schemas

HR.spCalculateEmployeeCompensation 
HR.spCalculateContractorBonus 
Web.spAppendWebLog 
Web.spUserEndSession 
Reporting.spGetCurrentYearSummary 
Reporting.spGetLastMonthDetail 

不仅将这些视觉上组织起来的SSMS名单,但你可以对每个模式应用不同的权限。