SEP = ", " QUOTE = "\'" NEWLINE = System.getProperty("line.separator") KEYWORDS_LOWERCASE = com.intellij.database.util.DbSqlUtil.areKeywordsLowerCase(PROJECT) def record(column, dataRow) { def value = dataRow.value(column) if( value == null) return def skipQuote = value.toString().isNumber() || value == null def stringValue = value != null ? FORMATTER.format(dataRow, column) : KW_NULL OUT.append(skipQuote ? "": QUOTE).append(stringValue.replace(QUOTE, QUOTE + QUOTE)) .append(skipQuote ? "": QUOTE) } rows = ROWS.asList() COLUMNS.eachWithIndex { column, idx -> if(idx > 0) OUT.append(NEWLINE) OUT.append("(") rows.eachWithIndex { row,ridx -> if(ridx > 0) OUT.append(",") record(column, row) } OUT.append(")") }