insert method
Future<int>
insert(
{ - required String table,
- required Map<String, dynamic> insertData,
- dynamic replace = false,
- dynamic debug = false,
})
return lastInsertID
await db.insert(
table: 'table',
insertData: {
'telphone': '+113888888888',
'create_time': 1620577162252,
'update_time': 1620577162252,
},
);
Implementation
Future<int> insert({
required String table,
required Map<String, dynamic> insertData,
replace = false,
debug = false,
}) async {
if (insertData.isEmpty) {
throw ('insertData.length!=0');
}
table = _tableParse(table);
List<String> _fields = [];
List<String> _values = [];
insertData.forEach((key, value) {
_fields.add('`$key`');
_values.add(':$key');
if (sqlEscape && value is String) {
insertData[key] = sqlEscapeString(value);
}
});
String _fieldsString = _fields.join(',');
String _valuesString = _values.join(',');
String _sql =
'${replace ? 'REPLACE' : 'INSERT'} INTO $table ($_fieldsString) VALUES ($_valuesString)';
ResultFormat result = await query(_sql, values: insertData, debug: debug);
return result.lastInsertID;
}