php8.5
Home/ Manual/ sqlite3 / sqlite3/ SQLite3::enableExtendedResultCodes

SQLite3::enableExtendedResultCodes

PHP function Edit on GitHub ✎

(PHP 7 >= 7.4.0, PHP 8)

Enables or disables the use of extended result codes

Description

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

Enables or disables the use of extended result codes, which are then reported by SQLite3::lastErrorCode. SQLite3::lastExtendedErrorCode is not affected by this setting, and always returns the extended result code.

Parameters

enable

Whether to enable (true) or disable (false) the use of extended result codes.

Return Values

Success

Examples

SQLite3::enableExtendedResultCodes example

php
<?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) {
}

// The primary result code (SQLITE_CONSTRAINT), then the extended result
// code (SQLITE_CONSTRAINT_UNIQUE).
var_dump($db->lastErrorCode(), $db->lastExtendedErrorCode());

// Once enabled, SQLite3::lastErrorCode() reports the extended result code
// as well.
$db->enableExtendedResultCodes();
var_dump($db->lastErrorCode());
?>

The above example will output:

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

See Also

  • SQLite3::lastExtendedErrorCode
  • SQLite3::lastErrorCode

Source: reference/sqlite3/sqlite3/enableextendedresultcodes.xml · from the official PHP manual (php/doc-en)