在SQL Server中创建和管理全局Procs和UDF的最佳方法是什么?

让我们假设我在同一个SQL Server实例上有两个独立的数据库.

DB1是与交易和头寸保持有关的数据库.

DB2是与市场定价变量相关的数据库.

两个数据库都有使用时间/日期对象的概念,我创建了一些方便的UDF.让我们进一步想象一下,我建立了一些方便的数学函数,我希望从所有数据库中调用它们.创建和组织它们的最佳方法是什么?

即我应该在主数据库中创建UDF和SP吗?我应该如何对所有CustomDateTime UDF进行分组,最好是在Schema中创建一些东西,以便用.myDateTime或.myMath替换.dbo?

建议赞赏,因为我不喜欢我目前如何将我的大部分功能放在DB1中,而且我知道许多功能与DB2相关?

最佳答案 使用Visual Studio创建数据库项目(我相信2008和2010支持它).保持项目中的对象脚本组织.检查项目和相关文件到某种形式的版本控制软件(SVN,git,hg,SourceSafe …).

您应该有一名DBA或负责将代码更改部署到生产环境的专职人员.您可以使用部署前和部署后脚本配置数据库项目,以便更轻松地使用它们.

我不建议将用户定义的对象保留在master中;恕我直言,你最好在每个数据库中使用副本.如果您正在管理上述代码,那么它们是重复的并不重要,因为源位于一个受管理的位置.

点赞