printlnIdentifier(getTableName(targetTable));
printIdentifier(getTableName(targetTable));
    protected void writeCopyDataStatement(Table sourceTable, Table targetTable) throws IOException    {        ListOrderedMap columns = new ListOrderedMap();        for (int idx = 0; idx < sourceTable.getColumnCount(); idx++)        {            Column sourceColumn = sourceTable.getColumn(idx);            Column targetColumn = targetTable.findColumn(sourceColumn.getName(),                                                         getPlatform().isDelimitedIdentifierModeOn());            if (targetColumn != null)            {                columns.put(sourceColumn, targetColumn);            }        }        print("INSERT INTO ");        printlnIdentifier(getTableName(targetTable));        print(" (");        for (Iterator columnIt = columns.keySet().iterator(); columnIt.hasNext();)        {            printIdentifier(getColumnName((Column)columnIt.next()));            if (columnIt.hasNext())            {                print(",");            }        }        print(") SELECT ");        for (Iterator columnsIt = columns.entrySet().iterator(); columnsIt.hasNext();)        {            Map.Entry entry = (Map.Entry)columnsIt.next();            writeCastExpression((Column)entry.getKey(),                                (Column)entry.getValue());            if (columnsIt.hasNext())            {                print(",");            }        }        print(" FROM ");        printlnIdentifier(getTableName(sourceTable));        printEndOfStatement();    }