table.addColumns(columns);
table.addAll(columns);
    public Database parse(String driver, String url, String user, String password) throws Exception    {        // Load the driver        Class.forName(driver);        // Connect to the data source        Connection connection = DriverManager.getConnection(url, user, password);        // Get the metadata        DatabaseMetaData dbMetaData = connection.getMetaData();        Database database = new Database();                // Get database tables        List tables = getTables(dbMetaData);        System.out.println("table list size: " + tables.size());                // Build a database-wide column -> table map.        columnTableMap = new Hashtable();        int tablesSize = tables.size();        /*        System.out.println("Building column/table map...");        for (int i = 0; i < tablesSize; i++)        {//            List table = (List) tableList.get(i);            Table table = (Table) tables.get(i);//            String curTable = (String) table.get(0);            String curTableName = table.getName();            List columns = getColumns(dbMetaData, curTableName);            for (int j = 0; j < columns.size(); j++)            {//                List col = (List) columns.get(j);//                String name = (String) col.get(0);                Column column = (Column) columns.get(j);                String name = column.getName();                columnTableMap.put(name, curTableName);            }        }*/        for (int i = 0; i < tablesSize; i++)        {            // Add Table.//            List tbl = (List) tableList.get(i);//            String curTable = (String) tbl.get(0);//            String tableType = (String) tbl.get(1);//            String curTable = (String) tableList.get(i);            // dbMap.addTable(curTable);                        Table table = (Table) tables.get(i);                        // Add Columns.            // TableMap tblMap = dbMap.getTable(curTable);            List columns = getColumns(dbMetaData, table.getName());            table.addColumns(columns);//            List primKeys = getPrimaryKeys(dbMetaData, curTable);//            Collection forgnKeys = getForeignKeys(dbMetaData, curTable);            database.addTable(table);        }        return database;    }