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

📄 transfer.java

📁 hsqldb是100%java实现的数据库,是一个开放源代码的JAVA数据库 l 具有标准的SQL语法和JAVA接口 l HSQLDB可以自由使用和分发 l 非常简洁和快速的
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
                f.show();                String sFileName = f.getFile();                String Path      = f.getDirectory();                if ((sFileName == null) || (sFileName.equals(""))) {                    Exit();                    return;                } else {                    sourceDb = new TransferSQLText(Path + sFileName, this);                }            }            if ((iTransferMode == TRFM_RESTORE)                    || (iTransferMode == TRFM_TRANSFER)) {                targetDb = new TransferDb(                    ConnectionDialog.createConnection(                        fMain, "Target Database"), this);                if (!targetDb.isConnected()) {                    Exit();                    return;                }            } else {                FileDialog f = new FileDialog(fMain, "Dump FileName",                                              FileDialog.SAVE);                f.show();                String sFileName = f.getFile();                String Path      = f.getDirectory();                if ((sFileName == null) || (sFileName.equals(""))) {                    Exit();                    return;                } else {                    targetDb = new TransferSQLText(Path + sFileName, this);                }            }        } catch (Exception e) {            Exit();            e.printStackTrace();            return;        }        if ((iTransferMode == TRFM_DUMP)                || (iTransferMode == TRFM_TRANSFER)) {            iSelectionStep = SELECT_SOURCE_CATALOG;            sSourceCatalog = null;        } else {            iSelectionStep = SELECT_DEST_CATALOG;            sDestCatalog   = null;        }        ProcessNextStep();        fMain.show();        return;    }    private void RefreshMainDisplay() {        lTable.removeAll();        lTable.repaint();        try {            tTable = sourceDb.getTables(sSourceCatalog, sSourceSchemas);            for (int i = 0; i < tTable.size(); i++) {                TransferTable t = (TransferTable) tTable.elementAt(i);                t.setDest(sDestSchema, targetDb);                t.extractTableStructure(sourceDb, targetDb);                lTable.add(t.Stmts.sSourceTable);                lTable.select(i);                displayTable(t);            }            bStart.setEnabled(true);            if (iTransferMode == TRFM_TRANSFER) {                trace("Edit definitions and press [Start Transfer]");            } else if (iTransferMode == TRFM_DUMP) {                trace("Edit definitions and press [Start Dump]");            }        } catch (Exception e) {            trace("Exception reading source tables: " + e);            e.printStackTrace();        }        fMain.show();    }    /**     * Method declaration     *     *     * @param f     * @param m     */    private void addMenuItems(Menu f, String[] m) {        for (int i = 0; i < m.length; i++) {            if (m[i].equals("-")) {                f.addSeparator();            } else {                MenuItem item = new MenuItem(m[i]);                item.addActionListener(this);                f.add(item);            }        }    }    /**     * Method declaration     *     *     * @param e     */    public void itemStateChanged(ItemEvent e) {        ItemSelectable item = e.getItemSelectable();        if (item == lTable) {            if (iSelectionStep == SELECT_SOURCE_TABLES) {                String table    = lTable.getSelectedItem();                int    selected = ((Integer) e.getItem()).intValue();                for (int i = 0; i < tTable.size(); i++) {                    TransferTable t = (TransferTable) tTable.elementAt(i);                    if (t == null) {                        continue;                    }                    if (i == selected) {                        saveTable();                        displayTable(t);                        updateEnabled(true);                    }                }            }        } else {            // it must be a checkbox            saveTable();            updateEnabled(true);        }    }    /**     * Method declaration     *     */    private void saveTable() {        if (tCurrent == null) {            return;        }        TransferTable t = tCurrent;        t.Stmts.sSourceTable     = tSourceTable.getText();        t.Stmts.sDestTable       = tDestTable.getText();        t.Stmts.sDestDrop        = tDestDrop.getText();        t.Stmts.sDestCreateIndex = tDestCreateIndex.getText();        t.Stmts.sDestDropIndex   = tDestDropIndex.getText();        t.Stmts.sDestCreate      = tDestCreate.getText();        t.Stmts.sDestDelete      = tDestDelete.getText();        t.Stmts.sSourceSelect    = tSourceSelect.getText();        t.Stmts.sDestInsert      = tDestInsert.getText();        t.Stmts.sDestAlter       = tDestAlter.getText();        //        t.Stmts.bTransfer    = cTransfer.getState();        t.Stmts.bDrop        = cDrop.getState();        t.Stmts.bCreate      = cCreate.getState();        t.Stmts.bDelete      = cDelete.getState();        t.Stmts.bInsert      = cInsert.getState();        t.Stmts.bAlter       = cAlter.getState();        t.Stmts.bCreateIndex = cCreateIndex.getState();        t.Stmts.bDropIndex   = cDropIndex.getState();        if (!t.Stmts.bTransfer) {            t.Stmts.bInsert = false;            cInsert.setState(false);        }        boolean reparsetable = ((t.Stmts.bFKForced != cFKForced.getState())                                || (t.Stmts.bIdxForced                                    != cIdxForced.getState()));        t.Stmts.bFKForced  = cFKForced.getState();        t.Stmts.bIdxForced = cIdxForced.getState();        if (reparsetable) {            try {                sourceDb.getTableStructure(t, targetDb);            } catch (Exception e) {                trace("Exception reading source tables: " + e);                e.printStackTrace();            }        }    }    /**     * Method declaration     *     *     * @param t     */    private void displayTable(TransferTable t) {        tCurrent = t;        if (t == null) {            return;        }        tSourceTable.setText(t.Stmts.sSourceTable);        tDestTable.setText(t.Stmts.sDestTable);        tDestDrop.setText(t.Stmts.sDestDrop);        tDestCreateIndex.setText(t.Stmts.sDestCreateIndex);        tDestDropIndex.setText(t.Stmts.sDestDropIndex);        tDestCreate.setText(t.Stmts.sDestCreate);        tDestDelete.setText(t.Stmts.sDestDelete);        tSourceSelect.setText(t.Stmts.sSourceSelect);        tDestInsert.setText(t.Stmts.sDestInsert);        tDestAlter.setText(t.Stmts.sDestAlter);        cTransfer.setState(t.Stmts.bTransfer);        cDrop.setState(t.Stmts.bDrop);        cCreate.setState(t.Stmts.bCreate);        cDropIndex.setState(t.Stmts.bDropIndex);        cCreateIndex.setState(t.Stmts.bCreateIndex);        cDelete.setState(t.Stmts.bDelete);        cInsert.setState(t.Stmts.bInsert);        cAlter.setState(t.Stmts.bAlter);        cFKForced.setState(t.Stmts.bFKForced);        cIdxForced.setState(t.Stmts.bIdxForced);    }    /**     * Method declaration     *     *     * @param and     */    private void updateEnabled(boolean and) {        boolean b = cTransfer.getState();        tDestTable.setEnabled(and && b);        tDestDrop.setEnabled(and && b && cDrop.getState());        tDestCreate.setEnabled(and && b && cCreate.getState());        tDestDelete.setEnabled(and && b && cDelete.getState());        tDestCreateIndex.setEnabled(and && b && cCreateIndex.getState());        tDestDropIndex.setEnabled(and && b && cDropIndex.getState());        tSourceSelect.setEnabled(and && b);        tDestInsert.setEnabled(and && b && cInsert.getState());        tDestAlter.setEnabled(and && b && cAlter.getState());        cDrop.setEnabled(and && b);        cCreate.setEnabled(and && b);        cDelete.setEnabled(and && b);        cCreateIndex.setEnabled(and && b);        cDropIndex.setEnabled(and && b);        cInsert.setEnabled(and && b);        cAlter.setEnabled(and && b);        cFKForced.setEnabled(cAlter.getState());        cIdxForced.setEnabled(cCreateIndex.getState());        bStart.setEnabled(and);        if (iTransferMode == TRFM_TRANSFER) {            bContinue.setEnabled(and);        }    }    /**     * Method ProcessNextStep     */    private void ProcessNextStep() {        switch (iSelectionStep) {            case SELECT_SOURCE_CATALOG :            case SELECT_DEST_CATALOG :                if (CatalogToSelect()) {                    fMain.show();                    return;                }                break;            case SELECT_DEST_SCHEMA :            case SELECT_SOURCE_SCHEMA :                if (SchemaToSelect()) {                    fMain.show();                    return;                }                break;            case SELECT_SOURCE_TABLES :                if (iTransferMode == TRFM_TRANSFER) {                    bStart.setLabel("Start Transfer");                } else if (iTransferMode == TRFM_DUMP) {                    bStart.setLabel("Start Dump");                } else if (iTransferMode == TRFM_RESTORE) {                    bStart.setLabel("Start Restore");                }                bStart.invalidate();                bStart.setEnabled(false);                lTable.setMultipleMode(false);                RefreshMainDisplay();                break;            default :                break;        }    }    /**     * Method declaration     *     *     * @param ev     */    public void actionPerformed(ActionEvent ev) {        if (ev.getSource() instanceof TextField) {            saveTable();            return;        }        String   s = ev.getActionCommand();        MenuItem i = new MenuItem();        if (s == null) {            if (ev.getSource() instanceof MenuItem) {                i = (MenuItem) ev.getSource();                s = i.getLabel();            }        }        if (s == null) {}        if (s.equals("Start Transfer") || s.equals("ReStart Transfer")) {            bStart.setLabel("ReStart Transfer");            bStart.invalidate();            CurrentTransfer = 0;            CurrentAlter    = 0;            transfer();        } else if (s.equals("Continue Transfer")) {            transfer();        } else if (s.equals("Start Dump") || s.equals("Start Restore")) {            CurrentTransfer = 0;            CurrentAlter    = 0;            transfer();        } else if (s.equals("Quit")) {            Exit();        } else if (s.indexOf("Select Schema") >= 0) {            String[] selection = lTable.getSelectedItems();            if ((selection == null) || (selection.length == 0)) {                return;            }            if (iSelectionStep == Transfer.SELECT_SOURCE_SCHEMA) {                sSourceSchemas = selection;            } else {                sDestSchema = selection[0];            }            if (iTransferMode == TRFM_DUMP) {                iSelectionStep = Transfer.SELECT_SOURCE_TABLES;            } else {                iSelectionStep++;            }            ProcessNextStep();        } else if (s.indexOf("Select Catalog") >= 0) {            String selection = lTable.getSelectedItem();            if ((selection == null) || (selection.equals(""))) {                return;            }            if (iSelectionStep == Transfer.SELECT_SOURCE_CATALOG) {                sSourceCatalog = selection;                sSourceSchemas = null;            } else {                sDestCatalog = selection;                sDestSchema  = null;                try {                    targetDb.setCatalog(sDestCatalog);                } catch (Exception ex) {                    trace("Catalog " + sDestCatalog                          + " could not be selected in the target database");                    sDestCatalog = null;                }            }            iSelectionStep++;            ProcessNextStep();        } else if (s.equals("Insert 10 rows only")) {            iMaxRows = 10;        } else if (s.equals("Insert 1000 rows only")) {            iMaxRows = 1000;        } else if (s.equals("Insert all rows")) {            iMaxRows = 0;        } else if (s.equals("Load Settings...")) {            FileDialog f = new FileDialog(fMain, "Load Settings",                                          FileDialog.LOAD);

⌨️ 快捷键说明

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