【问题标题】:How divide the database up into into smaller databases如何将数据库划分为更小的数据库
【发布时间】:2012-09-04 20:52:03
【问题描述】:

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

我想把它分成偏好和数据。

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

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

人们通常会如何做这件事?我应该对所有内容使用相同的数据库是否只是 SQL Server 的一个限制?

【问题讨论】:

  • 这可能是“做错事”的经典案例。你为什么要对自己和继承这个系统的人做这样的事情?

标签: sql-server sql-server-2012


【解决方案1】:

SQl Server 提供分区功能。根据wikipedia

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

1.Horizontal partitioning
2.Vertical partitioning

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

访问此链接会有所帮助

MSDN

SQLAuthority

我相信那里有很多教程。

【讨论】:

    【解决方案2】:

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

    我不明白您关于“数据库不支持外键”的评论。外键都是 SQL Server 中完整性约束的一部分,如何创建外键的详细说明可见here

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

    【讨论】:

    • 不确定 SQL Server,但 Oracle 允许定义对象表,其中每条记录也是一个对象。记录的字段是对象的属性,将对象数据库和关系数据库结合在一起。
    猜你喜欢
    • 1970-01-01
    • 2014-04-13
    • 1970-01-01
    • 2023-03-03
    • 2023-02-26
    • 1970-01-01
    • 2016-04-08
    • 1970-01-01
    • 2012-01-13
    相关资源
    最近更新 更多