public void populate(String schemaName, String tableName, int rows) throws SQLException {
        List<Column> columns = metaDataDao.tableColumns(schemaName, tableName);
        this.addForeignKeyGenerators(columns, schemaName, tableName);
        String prefixedTableName = schemaName + "." + tableName;
        row: for (int i = 0; i < rows; i++) {
            String insertStatement = "INSERT INTO " + prefixedTableName + " VALUES (";
            int c = 0;
            column: for (Column column : columns) {
                if ( c > 0 ) insertStatement += ",";
                c++;
                System.err.println(column.type);
                if (this.generators.hasGeneratorFor(tableName, column.columnName)) {
                    insertStatement += this.generators.getGeneratorFor(tableName,column.columnName).next();
                    continue column;
                }
                switch (column.type) {
                    case INTEGER: insertStatement += "0"; break;
                    case VARCHAR: insertStatement += "'bla'"; break;
                    case DATE: insertStatement += "'2013-01-01'"; break;
                }
            }
            insertStatement += ");";
            System.err.println(insertStatement);
            metaDataDao.statement.execute(insertStatement);
        }
    }