2015-04-03 57 views

回答

0

主键不一定是标识列,和Firebird 2.5和更早版本不具有标识列。相反,您可以使用触发器和序列/发生器来模拟它,但从元数据的角度来看,这不是“可检测的”(或者至少很难正确推断)。身份列将在Firebird 3中引入。

对于Firebird将该列识别为身份的实体框架客户端,您需要使用文本#PK_GEN#将列注释添加到列中(在数据库中!),如下所示:

comment on column yourtable.yourcolumn is '#PK_GEN#' 

参见:Generated primary key in Entity Framework model from Firebird

+0

非常感谢,这有点一个黑客,但它的工作就好了,顺便说一句,我是不知道FB 3.0支持标识列:) – user2475096 2015-04-04 12:21:24

+0

@ user2475096是的,这是解决方法。如果你想了解关于Firebird 3的更多信息(在测试版中,而不是产品准备就绪),请看http://www.firebirdsql.org/en/firebird-3-0-0-beta1/ – 2015-04-04 12:23:59