问题描述
如题,怎么解决这个问题Oracle.ManagedDataAccess.EntityFramework-ORA-01918:user'dbo'doesnotexist错误参考:http://stackoverflow.com/questions/27250555/oracle-manageddataaccess-entityframework-ora-01918-user-dbo-does-not-existmodelBuilder.HasDefaultSchema("MyOracleSchema");我没有看明白怎么解决的,oracle的默认schema是什么?怎么查?求解!
解决方案
解决方案二:
dbo对象只有sqlserver才有。你的efprovider需要换成支持oracle的
解决方案三:
dbo是sqlserver的默认scheme,oracle也是吗?
解决方案四:
引用1楼caozhy的回复:
dbo对象只有sqlserver才有。你的efprovider需要换成支持oracle的
我引用了oracle.ManagedDataAccess,就是不知道oracle怎样弄
解决方案五:
引用2楼findcaiyzh的回复:
dbo是sqlserver的默认scheme,oracle也是吗?
不是啊,是了我就不问了,我现在也不知道默认的是什么,怎么查都没查到,
解决方案六:
随意找个oracle工具连上去就能看到scheme了。“怎么都找不到”到底是怎么找的……
解决方案七:
而且你这个显然是原本sqlserver的EF直接切到oracle了,codefirst的话重新生成一下建库脚本,从db生成的话就连着oracle数据库重新刷新一下你的edmx
解决方案八:
我也遇到了这个问题,等我找到方案后再来回你。
解决方案九:
我的项目也遇到这个问题,答案找到了:1、在上下文里重载OnModelCreating://没用到这个方法protectedoverridevoidOnModelCreating(DbModelBuildermodelBuilder){modelBuilder.HasDefaultSchema("这里写你的Oracle用户名,一定要大写噢!");}
解决方案十:
我的项目也遇到这个问题,答案找到了:1、在上下文里重载OnModelCreating:protectedoverridevoidOnModelCreating(DbModelBuildermodelBuilder){modelBuilder.HasDefaultSchema("这里写你的Oracle用户名,一定要大写噢!");}
解决方案十一:
引用9楼dystocia的回复:
我的项目也遇到这个问题,答案找到了:1、在上下文里重载OnModelCreating:protectedoverridevoidOnModelCreating(DbModelBuildermodelBuilder){modelBuilder.HasDefaultSchema("这里写你的Oracle用户名,一定要大写噢!");}
大哥,多谢!!!我也是这个问题,搞了我一天时间!!!终于得救了!!!
解决方案十二:
oracle里面叫做表空间。