compileInsertMany method

  1. @override
String compileInsertMany(
  1. Map<String, dynamic> query,
  2. List<Map<String, dynamic>> values
)
override

Compile an insert statement with multiple rows.

Implementation

@override
String compileInsertMany(
  Map<String, dynamic> query,
  List<Map<String, dynamic>> values,
) {
  final table = wrapTable(query['table']);
  final first = values.first;
  final columns = first.keys.map(wrap).join(', ');

  final placeholders = values.map((row) {
    return '(${List.filled(row.length, '?').join(', ')})';
  }).join(', ');

  return 'INSERT INTO $table ($columns) VALUES $placeholders';
}