java都没学好,根本不是数据库的问题!去java板块

解决方案 »

  1.   

    import java.sql.*;
    import java.sql.ResultSet;
    import oracle.jdbc.*;public class HistoryDataMove 
    {public static void main(String[] args) {
    //System.out.println("11111");
    HistoryDataMove schedualed = new HistoryDataMove();
    schedualed.action();
    }class RunHandle0 implements Runnable {
    private OracleJavaProc proc = null;
    private String procName = "test";RunHandle0(String procName) {
    this.procName = procName;
    this.proc = new OracleJavaProc();
    }public void run() {
    try {
    System.out.println(procName);
    proc.procStartup(procName);
    } catch (Exception e) {
    e.printStackTrace();
    }
    }
    }public class OracleJavaProc {public void procStartup(String procName) {
    Connection conn = null;
    try {
    conn = DriverManager.getConnection("jdbc:default:connection:");CallableStatement proc = null;
    proc = conn.prepareCall("{call " + procName + "()}");
    proc.execute();
    }
    catch (Exception ex2) {
    ex2.printStackTrace();
    }
    finally{
    try {
    if(conn!=null){
    conn.close();
    }
    }
    catch (SQLException ex1) {
    }
    }
    }
    }
    public void action() {
    RunHandle0 t1 = new RunHandle0("HISDATA_MOVE.test");
    Thread thread1 = new Thread(t1);
    thread1.start();
    RunHandle0 t2 = new RunHandle0("HISDATA_MOVE.test1");
    Thread thread2 = new Thread(t2);
    thread2.start();
    }
    }我在myeclipse可以实现多线程,但在ORACLE那,只能是单线程顺线执行,能指点一下吗?
      

  2.   

    oracle多线程:多个CPU同时处理一个计算任务
    select /*+ parallel(a,8) */count(1) from table_name a;
    你的多线程:多个任务而已
    sql1:select count(1) from table_name a;
    sql2:select count(1) from table_name a;
      

  3.   

    数据库里有20几张业务实列表,每张表每天能生成200万数据,存储不够用,于是就有专门的存数据的数据库,通过DBLINK,每天把50天前的业务单实例数据移到另一数据库,又要保证白天业务单不受影响。
      

  4.   

    本来我想分JOB的,但,20几张表,JOB也太多了,或者存储过程是否可以多任务同时并发的功能呢?
      

  5.   

    其实没有必要作什么转储啊,既然用你自己的程序将数据写到数据库中,那完成可以直接就写到专门负责存储的数据库就Okay了。再有就是可以采用Oracle流复制技术(采用这种Oracle提供的技术,可以完成数据的复制,效率会很好,可以配置多个捕获进程、队列和应用进程来完成数据的复制),然后在实际每天应用的数据库,只要写个存储过程,将不是当天的数据删除就好了,这个效率应该是可以保障的)
      

  6.   

    在日期上建立索引。DMP出来,再SQLLDR进去。 如果是不同IP的,FTP过去。