> For the complete documentation index, see [llms.txt](https://mariadb.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mariadb.com/docs/server/reference/sql-statements/transactions/wait-and-nowait.md).

# WAIT and NOWAIT

Extended syntax so that it is possible to set [innodb\_lock\_wait\_timeout](/docs/server/server-usage/storage-engines/innodb/innodb-system-variables.md#innodb_lock_wait_timeout) and [lock\_wait\_timeout](/docs/server/server-management/variables-and-modes/server-system-variables.md#lock_wait_timeout) for the following statements:

## Syntax

```bnf
ALTER TABLE tbl_name [WAIT n|NOWAIT] ...
CREATE ... INDEX ON tbl_name (index_col_name, ...) [WAIT n|NOWAIT] ...
DROP INDEX ... [WAIT n|NOWAIT]
DROP TABLE tbl_name [WAIT n|NOWAIT] ...
LOCK TABLE ... [WAIT n|NOWAIT]
OPTIMIZE TABLE tbl_name [WAIT n|NOWAIT]
RENAME TABLE tbl_name [WAIT n|NOWAIT] ...
SELECT ... FOR UPDATE [WAIT n|NOWAIT]
SELECT ... LOCK IN SHARE MODE [WAIT n|NOWAIT]
TRUNCATE TABLE tbl_name [WAIT n|NOWAIT]
```

## Description

The lock wait timeout can be explicitly set in the statement by using either `WAIT n` (to set the wait in seconds) or `NOWAIT`, in which case the statement will immediately fail if the lock cannot be obtained. `WAIT 0` is equivalent to `NOWAIT`.

## See Also

* [Query Limits and Timeouts](/docs/server/ha-and-performance/optimization-and-tuning/query-optimizations/query-limits-and-timeouts.md)
* [ALTER TABLE](/docs/server/reference/sql-statements/data-definition/alter/alter-table.md)
* [CREATE INDEX](/docs/server/reference/sql-statements/data-definition/create/create-index.md)
* [DROP INDEX](/docs/server/reference/sql-statements/data-definition/drop/drop-index.md)
* [DROP TABLE](/docs/server/server-usage/tables/drop-table.md)
* [LOCK TABLES and UNLOCK TABLES](/docs/server/reference/sql-statements/transactions/lock-tables.md)
* [OPTIMIZE TABLE](/docs/server/ha-and-performance/optimization-and-tuning/optimizing-tables/optimize-table.md)
* [RENAME TABLE](/docs/server/reference/sql-statements/data-definition/rename-table.md)
* [SELECT](/docs/server/reference/sql-statements/data-manipulation/selecting-data/select.md)
* [TRUNCATE TABLE](/docs/server/reference/sql-statements/table-statements/truncate-table.md)

<sub>*This page is licensed: CC BY-SA / Gnu FDL*</sub>

{% @marketo/form formId="4316" %}
