首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OracleException: ORA-01918:用户'dbo‘不存在

OracleException: ORA-01918:用户'dbo‘不存在
EN

Stack Overflow用户
提问于 2018-03-28 10:49:53
回答 1查看 1.8K关注 0票数 0

我试图用EntityFramework 6连接到远程oracle时遇到了这个错误。我看到了类似的问题Oracle.ManagedDataAccess.EntityFramework - ORA-01918: user 'dbo' does not exist,但是我的模式名实际上是小写的(连接==模式,对吗?)--我用Oracle检查了它。我的连接线

数据源= (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST =srvhost)(端口= 1521)) (CONNECT_DATA = (SERVER =专用) (SERVICE_NAME = cmmd) );

所以这段代码没有帮助

代码语言:javascript
复制
builder.HasDefaultSchema("ORACLE"); // error ORA-01918: user 'ORACLE' does not exist

builder.HasDefaultSchema("oracle"); // error ORA-01918: user 'oracle' does not exist

编辑1:

代码语言:javascript
复制
public class OracleDbContext : DbContext
{
    public OracleDbContext() : base(new OracleConnection(Tools.GetConnectionString()), true)
    {

    }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        MapMonitoringObject(modelBuilder);
    }

    public DbSet<MonitoringObject> MonitoringObjects { get; set; }

    private void MapMonitoringObject (DbModelBuilder builder)
    {
        //builder.HasDefaultSchema("");
    }

}
EN

回答 1

Stack Overflow用户

发布于 2018-03-28 13:56:02

事实证明,"schema“是指用户,因为它存储在dba_users中。因此,我查询了它,选择了一个,添加到HasDefaultSchema中,错误就消失了(但现在返回null )。我确实试图找出“模式”在Oracle术语中的含义,但它很容易与“数据库”概念混淆。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49532538

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档