insert method
Implementation
Future<Either<ErrorSqlResult, ExecuteSuccesSqlResult>> insert() async {
return (_prepareInsertSQL()).fold((l) => left(l..methodName = 'insert'),
(r) async {
try {
return (await _sqlConnection.executeCommand('insert', r))
.fold((l) => left(l), (r) {
if (_currentRecord.assigned) {
var x = _records.removeAt(_rowIndex);
_records.add(x._backup);
_records.add(x);
_rowIndex++;
}
if (r.dataset != null) {
_loadReturningValues(r.dataset as Dataset);
}
_currentRecord.finalize();
return right(r);
});
} catch (e) {
return left(ErrorSqlResult(_className, 'insert', '', [e.toString()]));
}
});
}