实体框架更新语句为Firebird生成无效的SQL

时间:2011-04-06 23:21:26

标签: entity-framework-4 firebird firebird2.5

我正在使用Firebird 2.5.0和实体框架,该框架运行良好。但是,最近我改变了一些东西(我推测),现在当我尝试保存我的更改时生成的SQL对Firebird无效:

update ( select [fields] from [table]) set [field] = @p0 where ([keyfieldn = @pn])

据我所知,Firebird 2.5.0不支持这种语法,当我尝试保存更改时,我得到了一个SQL错误,说明了这一点(“令牌未知,第8列:(”)

我不知道现在该怎么办。什么会导致UpdateTranslator实例生成此SQL而不是在我打破它之前必须生成的任何内容?

1 个答案:

答案 0 :(得分:1)

我通过edmx文件回过头来发现当我从数据库中获取一些新字段时,我已经获得了一些'DefiningQuery'元素。我找不到任何方法来访问界面中的这些设置,所以我只是从文件中删除它们,它再次正常工作。