的主键定义:
PRIMARY KEY ((a, b))
...将a
和B
都设置为复合分区键。在此方案中,没有集群密钥。
这个定义:
PRIMARY KEY (a, b)
卡桑德拉有一张桌子 如何在“排序”列中添加聚类键。不重新创建表
我有一个关于设计的挑战,我有选择在我的卡桑德拉桌子上。这是在生产上运行的。但最近我观察到以下问题。 (这里的表名和列是为了便于讨论) 我的问题是,有人能在不改变Datamodel设计的情况下提出解决方案吗?
问题内容: 请清除我对此的疑问,在SQL Server(2000及更高版本)中,主键是自动对群集索引的吗?还是我们可以选择在主键上使用非群集索引? 问题答案: 不,它可以是非集群的。但是,如果您没有明确将其定义为非聚集索引,并且表上没有聚集索引,则会将其创建为聚集索引。
问题内容: 考虑下面的示例表(假设SQL Server 2005): 我正在考虑一个复合主键,该主键包含两个product_id列(我肯定会想要一个唯一约束),而不是一个单独的唯一ID列。从性能的角度来看,问题是该主键是否应该集群? 我是否还应该在每个ID列上创建一个索引,以便更快地查找外键?我相信该表在读取方面比在写入方面会受到更多的打击。 问题答案: 正如其他一些人已经说过的那样,这取决于您如
问题内容: 我使用Hibernate制作了一个示例应用程序。我的要求是表上没有主键。我只需要从应用程序中选择查询。我知道应该有一个主键,但是我所引用的表没有它。 它有大约5万条记录。因此,修改表以添加ID列将看不到可行的选项。 有可能吗 问题答案: Hibernate 要求 实体表具有主键。故事结局。 在谈论数据库时,5万条记录根本就不多。 我的建议:在表中添加一个自动增量整数PK列。您会对它的速
问题内容: 兼职勉强的DBA在这里。我想将现有的主键索引从群集更改为非群集。语法在逃避我。 这就是现在的脚本编写方式。 我在在线文档中没有看到ALTER CONSTRAINT语句。 问题答案: 删除聚集索引,然后将主键重新创建为非聚集键: