⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 transfertable.java

📁 一个用java写的开源的数据库系统
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
                    while (Statement.charAt(Statement.length() - 1) == ';') {                        Statement = Statement.substring(0, Statement.length()                                                        - 1);                    }                    try {                        tracer.trace("Executing " + Statement);                        destDb.execute(Statement);                    } catch (Exception e) {                        tracer.trace("Ignoring error " + e.getMessage());                    }                    lastsemicolon = nextsemicolon + 1;                    nextsemicolon = lastsemicolon                                    + Stmts.sDestDrop.substring(                                        lastsemicolon).indexOf(';');                }            }            if (Stmts.bCreate) {                if (Stmts.sDestCreate.charAt(Stmts.sDestCreate.length() - 1)                        != ';') {                    Stmts.sDestCreate += ";";                }                int lastsemicolon = 0;                int nextsemicolon = Stmts.sDestCreate.indexOf(';');                while (nextsemicolon > lastsemicolon) {                    Statement = Stmts.sDestCreate.substring(lastsemicolon,                            nextsemicolon);                    while (Statement.charAt(Statement.length() - 1) == ';') {                        Statement = Statement.substring(0, Statement.length()                                                        - 1);                    }                    tracer.trace("Executing " + Statement);                    destDb.execute(Statement);                    lastsemicolon = nextsemicolon + 1;                    nextsemicolon = lastsemicolon                                    + Stmts.sDestCreate.substring(                                        lastsemicolon).indexOf(';');                }            }        } catch (Exception e) {            try {                if (!destDb.getAutoCommit()) {                    destDb.rollback();                }            } catch (Exception e1) {}            throw (e);        }        if (!destDb.getAutoCommit()) {            destDb.commit();            try {                destDb.setAutoCommit(true);            } catch (Exception e) {}        }    }    void transferData(int iMaxRows) throws Exception, SQLException {        if (destDb.helper.needTransferTransaction()) {            try {                destDb.setAutoCommit(false);            } catch (Exception e) {}        }        try {            if (Stmts.bInsert) {                if (destDb.helper.needTransferTransaction()) {                    try {                        destDb.setAutoCommit(false);                    } catch (Exception e) {}                }                tracer.trace("Executing " + Stmts.sSourceSelect);                TransferResultSet r = sourceDb.getData(Stmts.sSourceSelect);                tracer.trace("Start transfering data...");                destDb.beginDataTransfer();                tracer.trace("Executing " + Stmts.sDestInsert);                destDb.putData(Stmts.sDestInsert, r, iMaxRows);                destDb.endDataTransfer();                tracer.trace("Finished");                if (!destDb.getAutoCommit()) {                    destDb.commit();                    try {                        destDb.setAutoCommit(true);                    } catch (Exception e) {}                }            }        } catch (Exception e) {            try {                if (!destDb.getAutoCommit()) {                    destDb.rollback();                }            } catch (Exception e1) {}            throw (e);        }        if (!destDb.getAutoCommit()) {            destDb.commit();            try {                destDb.setAutoCommit(true);            } catch (Exception e) {}        }    }    /**     * Method declaration     *     *     * @param t     *     * @throws SQLException     */    void transferAlter() throws Exception {        String Statement = new String("");        if (destDb.helper.needTransferTransaction()) {            try {                destDb.setAutoCommit(false);            } catch (Exception e) {}        }        if (Stmts.bTransfer == false) {            tracer.trace("Table " + Stmts.sSourceTable + " not transfered");            return;        }        tracer.trace("Table " + Stmts.sSourceTable + ": start alter");        try {            if (Stmts.bCreateIndex) {                if (Stmts.sDestCreateIndex.charAt(                        Stmts.sDestCreateIndex.length() - 1) != ';') {                    Stmts.sDestCreateIndex += ";";                }                int lastsemicolon = 0;                int nextsemicolon = Stmts.sDestCreateIndex.indexOf(';');                while (nextsemicolon > lastsemicolon) {                    Statement =                        Stmts.sDestCreateIndex.substring(lastsemicolon,                                                         nextsemicolon);                    while (Statement.charAt(Statement.length() - 1) == ';') {                        Statement = Statement.substring(0, Statement.length()                                                        - 1);                    }                    try {                        tracer.trace("Executing " + Stmts.sDestCreateIndex);                        destDb.execute(Statement);                    } catch (Exception e) {                        tracer.trace("Ignoring error " + e.getMessage());                    }                    lastsemicolon = nextsemicolon + 1;                    nextsemicolon = lastsemicolon                                    + Stmts.sDestCreateIndex.substring(                                        lastsemicolon).indexOf(';');                }            }            if (Stmts.bAlter) {                if (Stmts.sDestAlter.charAt(Stmts.sDestAlter.length() - 1)                        != ';') {                    Stmts.sDestAlter += ";";                }                int lastsemicolon = 0;                int nextsemicolon = Stmts.sDestAlter.indexOf(';');                while (nextsemicolon > lastsemicolon) {                    Statement = Stmts.sDestAlter.substring(lastsemicolon,                                                           nextsemicolon);                    while (Statement.charAt(Statement.length() - 1) == ';') {                        Statement = Statement.substring(0, Statement.length()                                                        - 1);                    }                    try {                        tracer.trace("Executing " + Statement);                        destDb.execute(Statement);                    } catch (Exception e) {                        tracer.trace("Ignoring error " + e.getMessage());                    }                    lastsemicolon = nextsemicolon + 1;                    nextsemicolon = lastsemicolon                                    + Stmts.sDestAlter.substring(                                        lastsemicolon).indexOf(';');                }            }        } catch (Exception e) {            try {                if (!destDb.getAutoCommit()) {                    destDb.rollback();                }            } catch (Exception e1) {}            throw (e);        }        if (!destDb.getAutoCommit()) {            destDb.commit();            try {                destDb.setAutoCommit(true);            } catch (Exception e) {}        }    }    private void initTypes() throws SQLException {        if (hTypes != null) {            return;        }        hTypes = destDb.helper.getSupportedTypes();    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -