将PK从GUID更改为INT以提高性能

时间:2018-04-24 14:04:05

标签: performance guid orckestra-cms

我在将10-30k行插入一个相当简单的表时会出现性能不佳的情况。只有4个值。 由于我实际上没有使用PK_进行任何查找,因此切换到auto_increment int作为PK_是一个明显的选择。

这就是我改变我的Datatype.cs

的方式
    ... 
    [KeyPropertyName("NewId")]
    ...
    [ImmutableFieldId("73fb2bb9-3eb2-49d8-aebd-dbaa1f1bad33")]
    [StoreFieldType(PhysicalStoreFieldType.Integer, IsNullable = false)]
    [NullIntegerRangeValidator(-2147483648, 2147483647)]
    int NewId { get; set; }

我的主要问题是: 我如何在C1中定义此默认值应为Identity(1,1),而不是在数据库中手动执行此操作。

次要问题: 除了C1控制台接口之外,是否有任何将PK_更改为int的并发症,因为该数据类型不再有效? 任何人都可以推荐另一种提高破坏性能的方法吗?

1 个答案:

答案 0 :(得分:0)

自从我最初的问题出现以来,我遇到了许多情况都不太令人满意的类似情况。在查询查询的情况下,应用一些SQL事件探查器建议非常有帮助。

就像描述了Improve an application performance by adding indexes to a database