如何将数据库划分为更小的数据库

时间:2012-09-04 20:52:04

标签: sql-server sql-server-2012

我有一个很大的SQL Server 2012数据库。

我想将其拆分为偏好和数据。

但是我发现SQL Server似乎不支持将数据划分为面向对象数据库的想法。它似乎依赖于同一数据库中的所有内容。

例如,数据库中不支持外键。跨数据库连接也是一件非常痛苦的事。

通常会有人这样做吗?仅仅是SQL Server的限制我应该使用相同的数据库吗?

3 个答案:

答案 0 :(得分:2)

SQl Server提供分区功能。根据{{​​3}}

分区是将逻辑数据库或其组成元素划分为不同的独立部分。数据库分区通常是出于可管理性,性能或可用性原因而进行的

1.Horizontal partitioning
2.Vertical partitioning

Each has it is own file group.it can be configured

访问此应有帮助的链接

wikipedia

MSDN

我确信那里有很多教程。

答案 1 :(得分:1)

WUT?它是一个单独的数据库,当然没有FK约束。接下来是什么,桌面上文档的外键限制?

如果两个数据库之间存在参照完整性和事务,那么它实际上不只是一个数据库吗?

你应该问问自己实际问题是什么。为什么要拆分数据库?整合与数据之间的相关性是什么,这些数据与将其移动到不同的数据库无关?

在您对此有所了解之后,您需要阅读很多关于数据库实际内容的内容,以及如何通过许多其他方式获得性能和灵活性。数据库优化是一项不易学习的工艺,“只是拆分数据库”几乎不是解决方案。

答案 2 :(得分:0)

SQL Server是一个关系数据库,因此不应期望它支持对象或面向对象的数据库隐含的根本不同的体系结构

我不明白您的评论“数据库中不支持外键”。外键是SQL Server中完整性约束的一部分,并且提供了有关如何创建它们的详细说明here

我认为您可能希望更具体地了解您尝试拆分的数据类型,以及为什么要将它们放在物理上独立的数据库中。对问题进行改进可能有助于我们提供更好的答案。

相关问题