利用C#将SQLServer数据库迁移到Oracle数据库方法探索

  系统整合过程中需要将现有的人员定位数据库(SqlServer2000)中的监测和考勤数据迁移到统一的数据库Oracle,不仅要将已经存在的数据迁移,还要考虑将现有系统运行过程中不断更新的数据也提取到Oracle中。着实让人头大,自己本身也没有什么经验!从网上找些资料,静态数据库迁移,即不考虑数据更新的方法还是有的,不管是SqlServer还是Oracle本身也提供的移植工具!但是对于动态更新的数据就没有办法了!只能自己编程实现了!

  考虑技术方案包括以下方面内容:

1.读取现有SqlServer数据库的Schema,包括表名,字段名,字段类型,字段长度,是否允许为空,约束,主键,外键等

2.在Oracle数据库中建立表

3.读取Sqlserver中表的记录,逐条写入Oracle

4.动态更新阶段根据时间字段读取更新的值

  涉及的技术和需要思考的问题:

1.多线程技术,目前的Sqlserver数据库已经有1G左右,部分单张表的记录条数过万,所以必须考虑执行的时间

2.Sqlserver数据类型到Oracle数据类型的转换

3.移植过程只简单的对表进行移植还是处理后(对某些表进行联合查询形成新的记录表)移植?


初步实现了读取Schema,表创建的程序,应用的多线程技术:

测试条件:本地SqlServer2008,局域网Oracle11g服务器,本地Oracle客户端。

http://www.pudn.com/downloads473/sourcecode/windows/csharp/detail1979615.html

posted @   太一吾鱼水  阅读(547)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程
点击右上角即可分享
微信分享提示