创建使用NHibernate的SchemaExport和非聚集主键
-
27-09-2019 - |
题
我们正在通过ActiveRecord的使用SchemaExport工具。缺省情况下它会产生像这样的表:
create table List (
Id UNIQUEIDENTIFIER not null,
Name NVARCHAR(255) null,
OwnerId UNIQUEIDENTIFIER null,
primary key ( Id ))
然后SQL Server默认为增加一个簇索引的主键。但我想这是非聚集。我想一个聚集索引添加到OWNERID,因为这将是更有效的。
现在,我可以运行一个脚本后创建一个非聚集索引。这将包括降低原来的主键约束和添加非集群之一。然而,SchemaExport工具已经帮忙,创建了阻止我掉落的主键我所有的外键约束。
所以我需要删除外键,其中有像FK4BAD9607D2BEDDB5无益的名称,然后重新创建它们(我可以再次自动做到这一点?)。这一切都有点头痛。
这会如果我可以在那里得到某种方式,并添加非聚集规范的主键,因为它产生它是一个容易得多。有没有我可以重写做到这一点,导出工具的相关位?
由于
解决方案
我相信你最好的选择是使用SchemaExport为创建脚本,并手动修改它。
否则,你需要重写Dialect.GetAddPrimaryKeyConstraintString
。
不隶属于 StackOverflow