利用C#将SQLServer数据库迁移到Oracle数据库方法探索
2012-08-24 11:49
561 查看
系统整合过程中需要将现有的人员定位数据库(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
考虑技术方案包括以下方面内容:
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
相关文章推荐
- 一种从数据库利用xml创建树型目录的方法(C#)
- 利用C#Reflector等反编译工具学习精练的编程方法
- c#利用Javascript跳转页面的方法
- C# 如何利用反射来加载程序集,并调用程序集中有关类的方法【转】
- VB.NET,C#.NET调用Web Service,利用visual studio 的实现方法
- Oracle数据库的普通迁移方法
- C#利用System.Uri转URL为绝对地址的方法
- C#中读取SQLServer数据库方法类库(感觉有点意思就载下来了 )
- 将ACCESS数据库迁移到SQLSERVER数据库两种方法
- [导入]用ASP.Net(C#)连接Oracle数据库的方法
- c#中利用new和override来控制virtual方法的版本
- C# 中利用 Conditional 定义条件方法
- 基于ASP.NET(C#)Web开发平台,对远程备份与恢复SQLServer数据库的方法
- 利用C#创建 IIS 站点并设置.NET Framework版本为ASP.NET 2.0 的方法
- C#利用pos命令操作网口打印机的方法
- 在C#中利用Keep-Alive处理Socket网络异常断开的方法
- C#利用微软自带库进行中文繁体和简体之间转换的方法
- C# 项目迁移 Microsoft.VisualStudio.Tools.Office.BuildTasks 生成解决方法报错:请确认 <UsingTask> 声明正确,该程序集及其所有依赖项都可用
- C# 利用反射调用类下的方法
- 在C#中利用Keep-Alive处理Socket网络异常断开的方法 Windows Socket 最大连接数