TableSelect::lockExclusive

(No version information available, might only be in Git)

TableSelect::lockExclusiveExecute EXCLUSIVE LOCK

Description

public mysql_xdevapi\TableSelect::lockExclusive(int $lock_waiting_option = ?): mysql_xdevapi\TableSelect

Execute a read operation with EXCLUSIVE LOCK. Only one lock can be active at a time.

Parameters

lock_waiting_option

The optional waiting option that defaults to MYSQLX_LOCK_DEFAULT. Valid values are:

  • MYSQLX_LOCK_DEFAULT

  • MYSQLX_LOCK_NOWAIT

  • MYSQLX_LOCK_SKIP_LOCKED

Return Values

TableSelect object.

Examples

Example #1 mysql_xdevapi\TableSelect::lockExclusive() example

<?php
$session
= mysql_xdevapi\getSession("mysqlx://user:password@localhost");

$schema = $session->getSchema("addressbook");
$table = $schema->getTable("names");

$session->startTransaction();

$result = $table->select('name', 'age')
->
lockExclusive(MYSQLX_LOCK_NOWAIT)
->
execute();

$session->commit();

$row = $result->fetchAll();
print_r($row);
?>

The above example will output something similar to:

Array
(
    [0] => Array
        (
            [name] => John
            [age] => 42
        )
    [1] => Array
        (
            [name] => Sam
            [age] => 42
        )
)