TableSelect::lockShared

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

TableSelect::lockSharedSHARED LOCK を実行する

説明

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

読み取り操作を SHARED LOCK 付きで実行します。 アクティブになれるロックは一度にひとつだけです。

パラメータ

lock_waiting_option

オプションで指定できる、ロック待ちのオプション。 デフォルトは MYSQLX_LOCK_DEFAULT です。 有効な値は以下のとおりです:

  • MYSQLX_LOCK_DEFAULT

  • MYSQLX_LOCK_NOWAIT

  • MYSQLX_LOCK_SKIP_LOCKED

戻り値

TableSelect オブジェクトを返します。

例1 mysql_xdevapi\TableSelect::lockShared() の例

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

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

$session->startTransaction();

$result $table->select('name''age')
  ->
lockShared(MYSQLX_LOCK_NOWAIT)
  ->
execute();

$session->commit();

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

上の例の出力は、 たとえば以下のようになります。

Array
(
    [0] => Array
        (
            [name] => John
            [age] => 42
        )
    [1] => Array
        (
            [name] => Sam
            [age] => 42
        )
)
関連キーワード:  TableSelect, SHARED, 実行, LOCK, xdevapi, lockShared, Array, ロック, lock, waiting