在 SQL 2005 中使用模式的最佳实践?

Posted

技术标签:

【中文标题】在 SQL 2005 中使用模式的最佳实践?【英文标题】:Best practices for using Schemas in SQL 2005? 【发布时间】:2010-10-01 21:50:53 【问题描述】:

我们计划将 SQL 2000 数据库迁移到 SQL 2005,我熟悉 2005 年在各种所有者/模式下创建表或其他对象的能力。

我们在 SQL 2000 中并没有真正具备这种能力,所以我想知道创建/管理多个模式的指导方针/最佳实践是什么。

我应该为所有对象创建一个架构吗? 我应该如何划分它们?

【问题讨论】:

【参考方案1】:

我尝试使用它来划分数据库内的责任区域。

我将有一个 util/utils/tools 模式,它在数据库之间非常可移植,并有一个数字表、UDF、SP 和帮助处理数据库的东西。这些过程不引用 utils 架构之外的任何内容。

然后我将有一个临时/工作/临时模式,我可以在其中执行 SELECT INTO 并创建我想要一个真实表而不是临时#table 的表。这里基本上只有表格,但表格上也可能有一些视图。

我有一个完全独立的数据库,用于验证导入和测试结果,但如果你没有,我可能有一个导入、导出和测试/测试结果架构,其中包含 ETL 或已知良好结果的内容进行回归测试。

那么其他一切都将只存在于几个模式中 - 或者可能只是一个。在大型系统中,每个子系统都可能是一个模式。其中的代码可以引用其他架构,但在引用架构之外的任何内容时都应该非常仔细地查看。

【讨论】:

【参考方案2】:

在设置新的测试服务器时,我对所有事情都使用一个巨大的模式,我只需要运行一个文件,我知道它包含所需的一切。

有些 ORM 会为每个对象生成一个文件,这可能有助于跟踪更改?但我没有看到手动执行此操作的目的。

【讨论】:

我不认为这真的是一回事。见msdn.microsoft.com/en-us/library/ms190387.aspx

以上是关于在 SQL 2005 中使用模式的最佳实践?的主要内容,如果未能解决你的问题,请参考以下文章

谁能建议将数据库从 SQL Server 2008 迁移到 2005 的最佳方法?

基于WPS的Word最佳实践系列(利用表格控制排版)

API管理和最佳实践

从SQL Server 2005存储过程到FTP的最佳做法是什么?

MSSQL - 最佳实践 - 使用SSL加密连接

在 JDBC 中编写 SQL 查询的最佳实践是啥