本人多年来一直用的是SQLSERVER,这次客户要求数据库要用ORACLE,项目程序都已完成,就是要转换成ORACLE,本人不想对ORACLE有过多了解,请问有什么速成的办法实现数据库的转换,强调一点本人对ORACLE一无所知.
解决方案 »
- asp.net中子线程操作主线程控件有问题?
- 想调整一下GridView的样式(最好有现成的可借鉴的代码)
- 【分页存储过程】又想实现不定条件的查询,遇到点问题,麻烦大家想想办法....
- 如何判断用户登陆超时?
- 急,高手帮忙,javascript调用c#后台,如何取得数组
- 选择一个文件夹.
- 请师兄们帮我看看这段js如何根据域名的变化而变化.
- 存储过程的日期参数怎么自动成两个单引号了?
- 请问session_end方法不执行会有什么原因?只有10分了
- 关于两个fileUpload控件同时上传
- 连续执行sql得更好办法:解决就结贴了
- windows profession版怎么样安装SQLserver2000的服务端?
在页面中写语句,你必须在所有的页面中修改,没有现在的办法.两个数据库的很多语法都不相同.比如说时间,ORACLE中是to_date('xxx','yyyy-mm-dd'),比如说条件oracle中是decode(xx,1,'',''),比如说取前几条oracle中是select * from table where rownum<=10,差异非常之大.
我看只有慢慢修改了.
1. 利用PowerDesigner逆向工程得到表结构
2. 转换成为Oracle的数据模式, 罗列数据类型差异
3. 建立Oracle表结构(当然包括规划表空间, 一般Oracle主程序1个, 用户数据1个, 索引1个, 工具和临时表空间1个, redo1个, 归档1个)
4. 现在考虑数据迁移问题, 首先迁移没有LOB的部分数据, 的确比较稳妥的方式是利用程序实现, RAD的可以考虑PB
5. 数据库对象的迁移没有办法, 只有阅读相关存储过程代码在Oracle重建了, 触发器也是如此, 除非你的触发器事件里面有Oracle不支持的部分, 比如我记得MSSQL里面的触发器有一种替代事件, 就是插入之前触发你可以选择取消插入数据, 不过好像不是rollback那么简单, 况且Oracle的触发器不允许Commit/Rollback的
6. 访问安全性迁移, 就是用户和权限啦, 这只有MSSQL和Oracle两边凑了
7. 数据安全性方案, 如果你的MSSQL原本有数据备份/恢复等等方案, 你对应Oracle也需要重做一边, 好在两种都有日志机制
8. 应用迁移, 修改你的程序适应Oracle
第二种方法:
数据转换:用sql的方法导出,用Oracle的sqlldr导入
第三种方法:
可以考虑使用oracle 的 migaration workbench每个都有自身优点和缺点,根据情况选择
参考:
http://otn.oracle.com/tech/migration/ama/docs/ama_wp.pdf
至于做项目 你可以边做边学