网站首页 > 文章中心 > 其它

db2怎么转oracle

作者:小编 更新时间:2023-09-09 08:09:38 浏览量:398人看过

db2迁移到oracle有哪几种方式

大概过程如下:

①.、先安装对应的透明网关组件

DRDA_REMOTE_DB_NAME=test

HS_DB_NAME=test

(SID_DESC=

(SID_NAME=test)

(ORACLE_HOME = 设置为$ORACLE_HOME)

db2怎么转oracle-图1

)

(DESCRIPTION =

(ADDRESS_LIST =

(CONNECT_DATA =

(SERVICE_NAME = test)

(HS = OK)

db2怎么转oracle-图2

如何把 DB2 数据迁移到 oracle 中

数据迁移:

SELECT

TABNAME TAB, --表英文名称

COLNAME COL, --列名称

CASE

WHEN TYPENAME LIKE 'SMALLINT' OR TYPENAME LIKE 'BIGINT' THEN 'INTEGER'

WHEN TYPENAME ='CHARACTER' THEN 'CHAR'

WHEN TYPENAME='DECFLOAT' OR TYPENAME ='DECIMAL' THEN 'NUMBER'

ELSE TYPENAME

END TY

, --数据类型

LENGTH LEN , --列长度

scale S, --精度

WHEN NULLS='N' THEN '否'

WHEN NULLS='Y' THEN '是'

END N --是否为空

--TY||'('||LEN||')'

FROM

SYSCAT.COLUMNS S

WHERE

/* and s.SCALE 0*/

ORDER BY

S.TABNAME,

S.COLNO

package com.util;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

static{

try {

} catch (InstantiationException e) {

e.printStackTrace();

} catch (IllegalAccessException e) {

} catch (ClassNotFoundException e) {

}

public Connection getConnection(){

Connection conn=null;

conn=DriverManager.getConnection(URL, USER, PASSWORD);

} catch (SQLException e) {

return conn;

此类链接oracle数据库工具类

此类用来关闭数据库连接工具类

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.Statement;

public class CloseFunction {

//关闭连接方法,释放资源

public static void closeConnection(Connection conn){

if (conn !=null){

conn.close();

//关闭执行sql,释放资源

public static void closeExecuteSQL(Statement preparedStatement){

if (preparedStatement !=null){

preparedStatement.close();

//关闭查询SQL结果,释放资源

public static void closeResultSet(ResultSet resultSet){

if(resultSet !=null){

resultSet.close();

package com.dao;

import java.security.interfaces.RSAKey;

import org.junit.Test;

import com.util.CloseFunction;

import com.util.ConnectionOracle;

@Test

public void test1() throws SQLException{

long startTime=System.currentTimeMillis(); //记录开始时间

Connection connOracle=null; //链接oracle数据库

Statement statement=null;

ResultSet resultSet=null;

PreparedStatement preparedStatement=null;

ConnectionOracle connectionOracle=new ConnectionOracle();

// System.out.println(connectionOracle+"链接oracle成功!");

String

,SENDTIME,ALARMTIME,SENDCONTENT,ISSEND ,ELEALARMID from

//执行oracle数据库sql语句,此处并非固定代码

//String oracleSQL="INSERT INTO EPC.SYS_LOG(ID,REMARK) values(?,?)";

oracleSQL="INSERT INTO

EPC.ET_SENDMESSAGEINFO(ID,SENDNO,SENDTYPE,BRNUMBER

,SENDTIME,ALARMTIME,SENDCONTENT,ISSEND ,ELEALARMID )"

+ "VALUES(?,?,?,?,?,?,?,?,?)";

connOracle=connectionOracle.getConnection(); //获取oracle数据库连接

connOracle.setAutoCommit(false); //把oracle数据库设置为非自动提交,以免在再循环里每次都提交,减低效率

preparedStatement=connOracle.prepareStatement(oracleSQL); //执行oracle语句,预编译

int num=0;

while (resultSet.next()) {

num ++;

preparedStatement.setString(1,resultSet.getString("ID"));

preparedStatement.setString(10, resultSet.getString("CONSUMETIME"));

preparedStatement.setString(11, resultSet.getString("TASKID"));

preparedStatement.addBatch();

//每一万次在oracle数据库里提交事务

if(num10000){

preparedStatement.executeBatch();

connOracle.commit();

num=0;

} catch (Exception e) {

connOracle.rollback(); //oracle数据库事务回滚

}finally{

new CloseFunction().closeConnection(connOracle); //关闭oracle数据库,释放资源

long endTime=System.currentTimeMillis(); //记录程序结束时间

System.out.println("总的时间:"+(endTime-startTime)/1000+"秒");

怎么把db2的数据导入到oracle中 iteye

这个比较好办.

建立一个 exp的目录 下面建立一个 log 的文件 来存放错误日志 等.

第一步 建立一个exp.bat 内容如下

echo Over Over

第二步 在exp目录下建立 zx.sql 内容如下

EXPORT TO

'ZX.TXT' OF DEL

//这个sql是 导出假设 表名是 zx的表.

然后你在建立一个 imp.bat 的文件,来把zx.txt 导入到 oracle,你需要建立 一个bad的目录和ctl的目录来存放oracle的ctl 文件.imp.bat 的内容如下

db2怎么转oracle-图3

//假设用户是 scott 数据的SID是 test

load data

infile 'zx.txt'

append into table zx

fields terminated by '^H '

DB2到Oracle的SQL转换

①.、Oracle没有DROP TABLE IF EXISTS

数据类型一致

以上就是土嘎嘎小编大虾米为大家整理的相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章