oracle数据库导出到mysql
来源:互联网 发布:java web嵌入式 编辑:程序博客网 时间:2024/06/05 04:53
需要的请根据自己的需求调整,代码简陋,但是搬砖还是可以的,对于mysql的插入时候可以修改引擎myisam这样可以快点。
import java.sql.*;/** * Created by admin on 17/10/19. */public class MOConnect { public Connection conn = null;// 创建一个数据库连接 public ResultSet res = null;// 创建一个结果集对象 public PreparedStatement stmt = null; public Statement Connect(String sql, String url, String driver, String userName, String password) { try { Class.forName(driver); conn = DriverManager.getConnection(url, userName, password); stmt = conn.prepareStatement(sql); return stmt; } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } return null; } /** * 返回 values(?,?,....) * * @param columnCount * @return */ public String createInsertSuffix(int columnCount) { String patten = ""; String sqlSuffix = ""; for (int i = 0; i < columnCount; i++) { patten += "?,"; } System.out.println(columnCount + "patt"); patten = patten.substring(0, patten.length() - 1); sqlSuffix = " values(" + patten + ")"; return sqlSuffix; } public void executeInsert(int columnCount, PreparedStatement mysqlStmt, ResultSet res) throws SQLException { for (int i = 1; i < columnCount + 1; i++) { mysqlStmt.setString(i, res.getString(i)); } mysqlStmt.execute(); } public static void main(String[] args) throws SQLException { String oracleDriver = "oracle.jdbc.driver.OracleDriver"; String oracleUrl = "jdbc:Oracle:thin:@你的IP:端口号:orcl"; String oracleUserName = "用户名"; String oraclePassWord = "密码"; String mysqlDriver = "com.mysql.jdbc.Driver"; String mysqlUrl = "jdbc:mysql://ip地址:端口号/report?useUnicode=yes&characterEncoding=UTF-8&useSSL=false"; String mysqlName = "用户名"; String mysqlPassWord = "密码"; String selectSqlPattern = "select * from "; String insertSqlPattern = "insert into ";
//要导出的表名集合 String tables[] = {}; for (String table : tables) { MOConnect moConnect = new MOConnect(); new Thread(new Runnable() { @Override public void run() { try { ResultSet oracleResult = null; // String oracleSql = selectSqlPattern + table+ " where CREATEDDATE > to_date(?,'yyyy-mm-dd hh24:mi:ss')"; String oracleSql = selectSqlPattern + table; System.out.println(oracleSql); PreparedStatement oracleStmt = (PreparedStatement) moConnect.Connect(oracleSql, oracleUrl, oracleDriver, oracleUserName, oraclePassWord); // oracleStmt.setString(1,"2017-10-01 00:00:00"); oracleStmt.execute(); ResultSetMetaData metaData = oracleStmt.getMetaData(); int columns = metaData.getColumnCount(); System.out.println("columns" + columns + " " + table); String insertSql = insertSqlPattern + table + moConnect.createInsertSuffix(columns); PreparedStatement mysqlStmt = (PreparedStatement) moConnect.Connect(insertSql, mysqlUrl, mysqlDriver, mysqlName, mysqlPassWord); System.out.println(insertSql); oracleResult = oracleStmt.getResultSet(); while (oracleResult.next()) { moConnect.executeInsert(columns, mysqlStmt, oracleResult); } } catch (Exception e) { e.printStackTrace(); } } }).start(); System.out.println(">>>>>>>>>>>>>>>>>>>>>" + table); } //ResultSet oracleResult = oracleStmt.getResultSet(); // while () //Statement mysqlResult = moConnect.Connect(mysqlSql,mysqlUrl,mysqlDriver,mysqlName,mysqlPassWord); }}
阅读全文
0 0
- oracle数据库导出到mysql
- mysql 导出数据库到本地
- 使用JDBC从mysql数据库中导出数据到Oracle数据库
- oracle 导出数据库结构到 PowerDesigner
- Oracle导出数据库结构到PowerDesigner
- oracle 导出数据库结构到 PowerDesigner
- oracle 导出数据库结构到 PowerDesigner
- Oracle导出数据库结构到PowerDesigner
- Oracle导出数据库结构到PowerDesigner
- Oracle导出数据库结构到PowerDesigner
- oracle 数据库中数据导出到excel
- 导出远程oracle数据库到本地
- SQLServer数据导出导入到Oracle数据库
- Oracle 导出数据到另外一个数据库
- MYSQL导出数据库中的数据到文件
- MySQL数据库迁移到Oracle
- 数据库转移 mysql到oracle
- Oracle和MySQL数据库导入导出
- 记一次apache POI存储word乱码问题
- 枚举---java类集对枚举的支持
- Lintcode
- 文章标题
- 避免MySQL数据库表默认排序造成乱序
- oracle数据库导出到mysql
- java类的访问权限
- Unity中JsonUtility对List<T>和Dictionary<Key,Value>的序列化
- 林锐内存管理详解
- 【汇编学习笔记】3:查询子串出现的位置
- 优秀工程师-layoutSubviews相关方法
- csdn博客使用反馈,bug
- 下载并编译Chrome浏览器For Android
- 程序的几种常用格式文件