SQL Server存储过程文件夹/分组

时间:2009-07-21 16:36:59

标签: sql-server stored-procedures directory

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

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

2 个答案:

答案 0 :(得分:9)

最常见的方法(在SQL 2005/2008中)是使用schemas

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

这些不仅可以在SSMS列表中直观地组织起来,还可以对每个模式应用不同的权限。

答案 1 :(得分:8)

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

CREATE SCHEMA ShoppingCart AUTHORIZATION Joe
    CREATE PROCEDURE AddItem ...

...将在用户界面中显示为ShoppingCart.AddItem

Schemas in Sql Server 2008