buildDeleteSqlByPks static method

SqlStatement buildDeleteSqlByPks(
  1. String localTableName,
  2. Map<String, dynamic> primaryKeyValues
)

Implementation

static SqlStatement buildDeleteSqlByPks(
  String localTableName,
  Map<String, dynamic> primaryKeyValues, // Keys are local column names
) {
  if (primaryKeyValues.isEmpty) {
    throw ArgumentError(
      "Primary key values cannot be empty for delete operation.",
    );
  }
  // Assumes primaryKeyValues keys are local column names
  final clauses = primaryKeyValues.keys.map((key) => '$key = ?').toList();
  final args = primaryKeyValues.values.toList();
  return SqlStatement(
    operationType: SqlOperationType.delete,
    tableName: localTableName,
    whereClauses: clauses, // Pass as a list of individual clauses
    whereArguments: args,
  );
}