相关疑难解决方法(0)

SQL Server 主键/聚集索引设计决策

寻找有关表/索引设计决策的一些建议,我必须对一些必须从现有的基于 4GL 的数据库移植到 SQL 服务器的表做出决定。

我有一个经常插入(从未更新)的产品历史记录表,并且该表具有这种结构

  1. 产品无字符串(20)
  2. 创建日期时间日期时间
  3. 描述字符串(100)

目前,主键由 ProductNo 和 CreatedDateTime 的组合组成,试图定义唯一的索引键。每个产品号我们可以有很多记录。

我将创建一些 1 对 1 相关表,并且不想将 productno 和 createddatetime 字段都携带到相关表中以充当外键。我也认为这种组合有点脆弱,以保证唯一性。

因此,我计划向表 'ProductHistoryPK' 添加一个新字段,作为递增的 Int 或 SequentialGuid 作为相关表的主键和外键。

在索引方面我正在考虑创建

  1. 新 ProductHistoryPK 字段上的非聚集主键。
  2. ProductNo 字段上的聚集索引,因为这是经常搜索的字段。

关于这个的任何想法或指示?

谢谢...

database-design sql-server

6
推荐指数
2
解决办法
4232
查看次数

标签 统计

database-design ×1

sql-server ×1