SQLite3::enableExtendedResultCodes

(PHP 7 >= 7.4.0, PHP 8)

SQLite3::enableExtendedResultCodes — 拡張結果コードの使用を有効または無効にする

説明

public function SQLite3::enableExtendedResultCodes(bool $enable = true): bool

拡張結果コードの使用を有効または無効にします。 有効にすると、SQLite3::lastErrorCode() が拡張結果コードを返すようになります。 SQLite3::lastExtendedErrorCode() はこの設定の影響を受けず、常に拡張結果コードを返します。

パラメータ

enable

拡張結果コードの使用を有効にする (true) か、無効にする (false) か。

戻り値

成功した場合に true を、失敗した場合に false を返します。

例

例1 SQLite3::enableExtendedResultCodes() の例

<?php
$db = new SQLite3(':memory:');
$db->enableExceptions(true);
$db->exec('CREATE TABLE t (a INTEGER UNIQUE)');
$db->exec('INSERT INTO t VALUES (1)');

try {
    $db->exec('INSERT INTO t VALUES (1)');
} catch (Exception $e) {
}

// 主要な結果コード (SQLITE_CONSTRAINT)、続いて拡張結果コード
// (SQLITE_CONSTRAINT_UNIQUE)。
var_dump($db->lastErrorCode(), $db->lastExtendedErrorCode());

// 有効にすると、SQLite3::lastErrorCode() も
// 拡張結果コードを返すようになります。
$db->enableExtendedResultCodes();
var_dump($db->lastErrorCode());
?>

上の例の出力は以下となります。

int(19)
int(2067)
int(2067)

参考

+add a note

User Contributed Notes

There are no user contributed notes for this page.