在我的数据库表中,我没有任何主键或唯一键。我正在使用 Oracle 数据库表。
1.我可以在没有主键或唯一键的情况下使用 Fluent nHibernate 吗?
2.如果我可以使用它,我该如何做映射?因为当Id
未映射时,它会引发异常。
在我的数据库表中,我没有任何主键或唯一键。我正在使用 Oracle 数据库表。
1.我可以在没有主键或唯一键的情况下使用 Fluent nHibernate 吗?
2.如果我可以使用它,我该如何做映射?因为当Id
未映射时,它会引发异常。
没有主键的 Fluent-NHibernate 表映射可能重复。
AFAIK 所有的 ORM 都需要一个主键。我看到的主要原因是管理会话中的脏跟踪和缓存机制。
此外,您没有理由不在表中拥有主键。即使你认为你不需要一个,坚持一个自动递增的 int 列作为键,你应该没有问题。
如果您使用的是 oracle,请尝试使用“ROWID”。但在我看来,如果您没有任何主键或唯一键,那么最好使用您自己的 ORM 来满足您的要求。