Locks
qb includes a few methods to help you lock certain rows when executing select
statements.
Note: For locks to work properly, they must be nested inside a transaction
. qb does not handle any of the transaction lifecycle for you.
sharedLock
Name | Type | Required | Default | Description |
No arguments |
A shared lock prevents the selected rows from being modified until your transaction is committed.
lockForUpdate
Name | Type | Required | Default | Description |
No arguments |
A lock for update lock prevents the selected rows from being modified or selected with another shared lock until your transaction is committed.
The main difference between a sharedLock
and lockForUpdate
is that a lockForUpdate
prevents other reads or selects as well as updates.
noLock
Name | Type | Required | Default | Description |
No arguments |
noLock
will instruct your grammar to ignore any shared locks when executing the query.
Currently this only makes a difference in SQL Server grammars.
lock
Name | Type | Required | Default | Description |
value | string |
| The custom lock directive to add to the query. |
The lock
method will allow you to add a custom lock directive to your query. Think of it as the raw
method for lock directives.
These lock directives vary from grammar to grammar.
clearLock
Name | Type | Required | Default | Description |
No arguments |
Clears any lock directive on the query.
Last updated