insert method
Inserts a new row into the specified table
and returns the inserted data.
Automatically generates a parameterized query using the data
keys.
Uses RETURNING *
to fetch and return the inserted row(s).
Implementation
@override
Future<DbResult> insert(String table, Map<String, dynamic> data) async {
final columns = data.keys.join(', ');
final values = data.keys.map((k) => '@$k').join(', ');
final query = 'INSERT INTO $table ($columns) VALUES ($values) RETURNING *;';
return rawQuery(query, values: data);
}