摘要:本文主要向大家介绍了Oracle数据库之ABP框架EF6链接Oracle数据库手动迁移,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助。
本文主要向大家介绍了Oracle数据库之ABP框架EF6链接Oracle数据库手动迁移,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助。
环境:VS2017 + ABP官方模板(不含Zero) +Oracle 11Gx64DB + Oracle 11Gx32Client(PLSQL工具访问)
一、Abp项目的下载以及运行
1、创建abp项目。进入官网 https://aspnetboilerplate.com/下载项目模板。abp项目有两种架构,一种是单页面(angularjs),另一种是mvc的。点击创建按钮。入下图:
2、对下载的源码首先进行编译,让其自动下载Nuget项目依赖包,保证源码可以编译通过。
3、在WinRun2.Core项目中增加User.cs类:
对User实体增加几个属性如下:
3、在WinRun2.EntityFramework项目中对WinRun2DbContext类进行修改:
增加DbSet
增加Oracle数据库的Schema(默认是dbo,Oracle数据库必须要修改):
二、Oracle DB 对EF code first的支持
1、在WinRun2.EntityFramework项目增加Oracle EF 驱动的引用,在Nuget中进行安装:
2、修改WinRun2.Web项目中Web.Config配置信息(也可以在WinRun2.Web中也安装Oracle.ManagedDataAccess的依赖包,就会自动在Config中生成Oracle配置信息)
三、创建Oracle数据库Schema
1、首先要保证本地客户端可以链接到Oracle DB服务器,用DBA权限的账号使用Oracle开发工具或SQLPLUS创建新的Schema信息:
2、登录cps/oracle@winrun进行测试,查询所有Table:
3、配置Web.Config中的Oracle链接字符串:
TNS配置:
链接字符串配置:
四、实现数据迁移
1、add-migration:
2、update-database,此处报错了:
3、错误处理,原因是ODP.NET GAC (Global Assembly Cache)中不存在或版本不一致。
Installing Oracle.ManagedDataAccess.dll to GAC resolved my issue. If you installed Oracle Client or Oracle Database on your machine that might be the cause.
注意路径,不同的系统版本(Win10)路径会不一样:"C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\gacutil.exe" /i Oracle.ManagedDataAccess.dll
4、再次update-database,还是报错了,不过换了一个错误:
4、此错误说明Oracle驱动已OK,链接登录时报错,再次解决该问题:
在链接字符串中增加Persist Security Info=true 即可。
5、再次迁移,成功了!
6、Oracle数据库的改变
迁移支持自增长类型(Oracle使用的Trigger+Sequences实现自增长ID)
本文由职坐标整理并发布,希望对同学们学习Oracle有所帮助,更多内容请关注职坐标数据库Oracle数据库频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号