如何创建一个自增的非关键字段

Posted

技术标签:

【中文标题】如何创建一个自增的非关键字段【英文标题】:How to create an auto-incrementing non-key field 【发布时间】:2015-11-12 02:43:00 【问题描述】:

我在一个实体上有一个字段,它需要是一个自动递增的整数,但它不是实体键(我为此使用了 guid)。

如何装饰字段以使其成为自动递增的 id?

public class Foo 
    public Guid Id get; private set; = Guid.NewGuid();
    public int ShouldAutoIncrement get; private set;

【问题讨论】:

如果Guid是key,int值的作用是什么? @Nate 客户请求,他们希望能够通过一个友好的递增数字来谈论这个特定的实体。不过,我的整个基础架构都使用 guid id Entity Framework auto incrementing field, that isnt the Id的可能重复 【参考方案1】:

其中一个相关问题 (Entity Framework auto incrementing field, that isn't the Id) 使用

来回答
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]

注释

【讨论】:

以上是关于如何创建一个自增的非关键字段的主要内容,如果未能解决你的问题,请参考以下文章

Oracle实现主键自增的几种方式

ORACLE数据库实现自增的两种方式

Oracle 怎样查询所有自增的序列名

innodb 存储引擎为啥要用一个自增的主键

sql server建表时怎么设置ID字段自增

对已经存在的没有唯一标识的表添加一个自增的id字段(利用序列sequence)操作过程