我设计了一个实体数据模型,它有两个实体,它们之间存在多对多的关系.当我自动生成sql代码以生成此模型的数据库时,它生成了一个表(两列)来跟踪这种多对多关联.但是,此表在两列上都有一个PRIMARY KEY NONCLUSTERED.
既然我希望这个可以在sql Azure上工作,它不喜欢只有非聚簇索引的表,我想知道是否有一种很好的方法来告诉代码生成生成聚簇索引?谢谢!
解决方法
我有另一个名为Model.indexes.sql的文件,其中包含用于创建超出EF生成的基本索引的脚本的脚本,例如用于性能优化的索引.
虽然这不是理想的,但我在其中添加了一个索引drop并为每个EF关联创建,以将Non-Clustered索引转换为索引索引:
ALTER TABLE [dbo].[MyAssociation]
DROP CONSTRAINT [PK_MyAssociation]
走
ALTER TABLE [dbo].[MyAssociation]
添加约束[PK_MyAssociation]
PRIMARY KEY CLUSTERED([Table1_Id],[Table2_Id] ASC);
走