Interface DestroyOptions<TAttributes>

Options accepted by Model.destroy.

interface DestroyOptions<TAttributes> {
    [COMPLETES_TRANSACTION]?: boolean;
    benchmark?: boolean;
    connection?: null | AbstractConnection;
    force?: boolean;
    hooks?: boolean;
    individualHooks?: boolean;
    limit?: number | Nullish | Literal;
    logging?: false | ((sql, timing?) => void);
    transaction?: null | Transaction;
    where?: WhereOptions<TAttributes>;
}

Type Parameters

  • TAttributes = any

Hierarchy (view full)

Properties

[COMPLETES_TRANSACTION]?: boolean

Indicates if the query completes the transaction Internal only

benchmark?: boolean

Pass query execution time in milliseconds as second argument to logging function (options.logging).

connection?: null | AbstractConnection

The connection on which this query must be run. Mutually exclusive with Transactionable.transaction.

Can be used to ensure that a query is run on the same connection as a previous query, which is useful when configuring session options.

Specifying this option takes precedence over CLS Transactions. If a transaction is running in the current AsyncLocalStorage context, it will be ignored in favor of the specified connection.

force?: boolean

Delete instead of setting deletedAt to current timestamp (only applicable if paranoid is enabled)

Default

false
hooks?: boolean

If false the applicable hooks will not be called. The default value depends on the context.

Default

true
individualHooks?: boolean

If set to true, destroy will SELECT all records matching the where parameter and will execute before / after destroy hooks on each row

Default

false
limit?: number | Nullish | Literal

How many rows to delete

logging?: false | ((sql, timing?) => void)

A function that gets executed while running the query to log the sql.

Type declaration

    • (sql, timing?): void
    • Parameters

      • sql: string
      • Optional timing: number

      Returns void

transaction?: null | Transaction

The transaction in which this query must be run. Mutually exclusive with Transactionable.connection.

If the Sequelize disableClsTransactions option has not been set to true, and a transaction is running in the current AsyncLocalStorage context, that transaction will be used, unless null or another Transaction is manually specified here.

The WHERE clause. Can be many things from a hash of attributes to raw SQL.

Visit https://sequelize.org/docs/v7/core-concepts/model-querying-basics/ for more information.