protected override void AppendTo(SqlStringBuilder builder)
{
builder.Append("INSERT INTO ");
builder.Append(TableName);
if (ColumnNames != null &&
ColumnNames.Length > 0) {
builder.Append("(");
builder.Append(String.Join(", ", ColumnNames));
builder.Append(")");
}
var values = Values.ToList();
if (values.Count > 1) {
builder.AppendLine();
builder.Indent();
builder.AppendLine("VALUES");
for (int i = 0; i < values.Count; i++) {
var set = values[i];
builder.Append("(");
for (int j = 0; j < set.Length; j++) {
builder.Append(set[j]);
if (j < set.Length - 1)
builder.Append(", ");
}
builder.Append(")");
if (i < values.Count - 1) {
builder.AppendLine(",");
}
}
} else {
builder.Append(" VALUES ");
var set = values[0];
builder.Append("(");
for (int i = 0; i < set.Length; i++) {
builder.Append(set[i]);
if (i < set.Length - 1)
builder.Append(", ");
}
builder.Append(")");
}
}