数据库db2到oracle迁移解决方案

这篇博客详细介绍了从DB2数据库迁移至Oracle数据库的过程中遇到的问题,包括取前n条数据的不同语法、ROWNUM与ROWID的区别、空值转换、空字符串处理、弱类型判断、类型转换以及时间和日期的处理方法,为数据库迁移提供解决方案。
摘要由CSDN通过智能技术生成

数据库db2到oracle迁移解决方案

前言

    本文对数据库db2到oracle迁移过程遇到的问题和解决方案进行总结梳理,为项目从db2数据库迁移到oracle数据库sql语句修改提供参考。

1.取前n条数据

描述:

    db2语法为fetch first n rows only,oracle取前n条数据的语法为在where条件中增加rownum<=n;

举例:

1--按照f_id降序取表tab_example_info中前十条数据
2--db2
3select * from tab_example_info order by f_id desc fetch first 10 rows only
4--oracle
5select * from (select * from tab_example_info order by f_id desc) where rownum<=10

2.rownum和rowid

描述:

    oracle含有rowid ,由数据库唯一产生的,可以在程序里可以获得;db2不能被程序获得。

    oracle中含有rowid和rownum,其中rownum是获取查询结果集后再加上去的,rowid是数据库数据产生的时候生产的结果。

举例:

1--oracle rownum和rowid
2--1.rownum只能用< 或者<=
3--2.rownum<或者<=今年放在子查询里面
4--错误用法
5select rownum,f_name from tab_example_info where rownum>5 and rownum<10;
6--正确用法
7select * 
  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值