【发布时间】:2017-08-20 08:03:05
【问题描述】:
我正在 SQL Server 和 PostgreSQL 上使用 NHibernate。我在使用 PostgreSQL 映射 auto_increment 属性时遇到了一些问题。
Id(c => c.PlayerId, map => map.Generator(Generators.Identity));
以这种方式映射 PlayerId 会在插入 PostgreSQL 数据库时出错。
将Generators.Identity 更改为Generators.Increment,并将映射文件加倍工作正常。
但此时更改或加倍映射文件在我的项目中不是一个选项。
有什么解释为什么 Generators.Identity 映射在 PostgreSQL 中不起作用?谢谢你。
这是我得到的错误:
could not insert: [Company.DataMigration.DataBase.Entities.Player][SQL: INSERT INTO Player (PlayerId, PlayerName, PlayerAge, DOJ, BelongsTo) VALUES (nextval ('hibernate_sequence'), ?, ?, ?, ?) returning PlayerId]
【问题讨论】:
标签: postgresql nhibernate mapping