Описание
array
oci_error ( [resource source] )
Для большинства ошибок параметром source является
соответствующий идентификатор соединения или выражения. Для ошибок во время
выполнения функций oci_connect(),
oci_new_connect() и oci_pconnect()
этот параметр указывать не следует. oci_error() возвращает
последнюю ошибку, которая была обнаружена в указанном ресурсе. В случае,
если ошибок не было найдено, oci_error() возвращает FALSE.
oci_error() возвращает ошибку в виде ассоциативного
массива из четырех элементов. Элемент code содержит код
ошибки Oracle; элемент message - строку с текстом
ошибки; sqltext - строка, содержащая выражение SQL,
которое вызвало ошибку, а элемент offset - указатель
на место в выражении, которое вызвало ошибку.
Замечание:
Элементы массива offset и sqltext
были добавлены начиная с версии PHP 4.3.
Пример 1. Вывод сообщения при ошибке соединения
$conn = @oci_connect("scott", "tiger", "mydb"); if (!$conn) { $e = oci_error(); // For oci_connect errors pass no handle echo htmlentities($e['message']); }
|
|
Пример 2. Вывод сообщения при ошибке парсинга выражения
$stmt = @oci_parse($conn, "select ' from dual"); // note mismatched quote if (!$stmt) { $e = oci_parse($conn); // For oci_parse errors pass the connection handle echo htmlentities($e['message']); }
|
|
Пример 3. Вывод сообщения об ошибке и SQL-выражения, в котором она возникла
$r = oci_execute($stmt); if (!$r) { $e = oci_error($stmt); // For oci_execute errors pass the statementhandle echo htmlentities($e['message']); echo "<pre>"; echo htmlentities($e['sqltext']); printf("\n%".($e['offset']+1)."s", "^"); echo "</pre>"; }
|
|
Замечание:
В версиях PHP ниже 5.0.0 эта функция называлась ocierror().
В PHP 5.0.0 и выше ocierror() является
алиасом oci_error(), поэтому вы можете
продолжать использовать это имя, однако это не рекомендуется.