buildDeleteStatement method
Build a delete statement based on the manager state
Implementation
DeleteStatement buildDeleteStatement() {
final DeleteStatement deleteStatement;
if (joinBuilders.isEmpty) {
deleteStatement = db.delete(_tableAsTableInfo);
if (filter != null) {
deleteStatement.where((_) => filter!);
}
} else {
deleteStatement = db.delete(_tableAsTableInfo);
for (var col in _tableAsTableInfo.primaryKey) {
final subquery = buildSelectStatement(targetColumns: [col]);
deleteStatement.where((tbl) => col.isInQuery(subquery));
}
}
return deleteStatement;
}