首页 > 解决方案 > 尝试使用 .Net Core 3.1 和 Oracle.EntityFrameworkCore v3.19 在 Oracle DB 中保存更改()

问题描述

我一直在尝试利用 .NetCore 的 Oracle.EntityFrameworkCore v3.19 提供程序。

我按照 Oracle 的教程一起测试这些特性。 https://docs.oracle.com/en/database/oracle/oracle-data-access-components/19.3/odpnt/EFCoreSampleCode.html#GUID-71B4A0A3-7B88-4D4D-BC99-8ACB2F344280

我的代码与上述代码完全相同。

我还在我的数据库模式中创建了博客和帖子表。

但是每次我运行它都会得到一个异常(在 db.SaveChanges(); 行):

OracleException:ORA-06550:第 13 行,第 14 列:PL/SQL:ORA-00942:表或视图不存在 ORA-06550:第 13 行,第 1 列:PL/SQL:忽略 SQL 语句

如果有什么我可以尝试继续前进的,请告诉我。

标签: oracle.net-coreentity-framework-core

解决方案


该问题实际上与我在连接中使用的 ServiceName 有关。默认情况下它应该是“XE”。在整个安装过程中的某个地方显示了此图像,使我相信我的 serviceName 将是“XEPDB1”

甲骨文安装

一旦我开始使用“默认”服务名称“XE”,一切都开始顺利进行。鉴于我仍在使用 modelBuilder.HasDefaultSchema("SMITH"); 在上下文类中。

感谢所有的帮助。


推荐阅读