实体框架 - Oracle:没有主键的视图

时间:2016-12-13 14:53:11

标签: c# sql oracle entity-framework odp.net

我有一个使用group by语句的视图。因此,视图没有主键列。

在EF中,您的表和视图需要具有主键或id列。 当我搜索To force entity framework to use a column as a primary key, use ISNULL时。 这是sql的解决方案,但我使用的是Oracle数据库。

因此我尝试在Oracle中使用ISNULL()等效的NVL(),但它没有解决问题。

edmx文件中的错误日志如下: 表/视图'TRANSFERS'没有定义主键,也没有推断出有效的主键。此表/视图已被排除。要使用该实体,您需要检查您的架构,添加正确的密钥并取消注释

由于

1 个答案:

答案 0 :(得分:0)

我不熟悉Entity Framework,但如果问题是如何在视图上添加主键,则可以通过将主键创建为disable来完成。请看下面的示例,视图v_test被定义为基础表中的查询组。

create table t_test (a number);
create or replace view v_test 
(col1, col2, constraint pk_test primary key (col1) rely disable novalidate) as
select a col1, count(1) col2
from t_test group by a;
相关问题