/// <inheritdoc /> public SqlCommand MakeDeleteByPrimaryKeyCommand(object id, TableSchema tableSchema) { var sql = new SqlCommandBuilder("DELETE FROM ").Append(tableSchema.Name); var primaryKeys = tableSchema.GetPrimaryKeys(); sql.AppendWherePrimaryKeysClause(primaryKeys); return(sql.ToPrimaryKeySql(tableSchema, id)); }
/// <inheritdoc /> public SqlCommand MakeDeleteCommand(object entity, TableSchema tableSchema) { Ensure.NotNull(entity, nameof(entity)); var sql = new SqlCommandBuilder("DELETE FROM ").Append(tableSchema.Name); sql.AppendWherePrimaryKeysClause(tableSchema.GetPrimaryKeys()); return(sql.ToCommand(entity)); }
/// <inheritdoc /> public SqlCommand MakeFindCommand(object id, TableSchema tableSchema) { Ensure.NotNull(id, nameof(id)); var primaryKeys = tableSchema.GetPrimaryKeys(); var sql = new SqlCommandBuilder("SELECT ").AppendSelectPropertiesClause(tableSchema.Columns); sql.AppendClause("FROM ").Append(tableSchema.Name); sql.AppendWherePrimaryKeysClause(primaryKeys); return(sql.ToPrimaryKeySql(tableSchema, id)); }
public SqlMultipleCommand <TEntity> MakeUpdateRangeCommand <TEntity>(IEnumerable <TEntity> entities, TableSchema tableSchema) where TEntity : class { bool Include(ColumnSchema p) => p.Usage.IncludeInUpdateStatements; var sql = new SqlCommandBuilder("UPDATE ").Append(tableSchema.Name); sql.AppendClause("SET ").AppendColumnNamesEqualParameters(tableSchema.Columns, ", ", Include); sql.AppendWherePrimaryKeysClause(tableSchema.GetPrimaryKeys()); return(sql.ToMultipleCommand(entities)); }
/// <inheritdoc /> public SqlCommand MakeUpdateCommand(object entity, TableSchema tableSchema) { Ensure.NotNull(entity, nameof(entity)); bool Include(ColumnSchema p) => p.Usage.IncludeInUpdateStatements; var sql = new SqlCommandBuilder("UPDATE ").Append(tableSchema.Name); sql.AppendClause("SET ").AppendColumnNamesEqualParameters(tableSchema.Columns, ", ", Include); sql.AppendWherePrimaryKeysClause(tableSchema.GetPrimaryKeys()); return(sql.ToCommand(entity)); }