OCI_ERROR(3) OCI_ERROR(3)
oci_error - Returns the last error found
SYNOPSIS
array oci_error ([resource $resource])
DESCRIPTION
Returns the last error found.
The function should be called immediately after an error occurs. Errors are cleared by a successful statement.
PARAMETERS
o $resource
- For most errors, $resource is the resource handle that was passed to the failing function call. For connection errors with
oci_connect(3), oci_new_connect(3) or oci_pconnect(3) do not pass $resource.
RETURN VALUES
If no error is found, oci_error(3) returns FALSE. Otherwise, oci_error(3) returns the error information as an associative array.
oci_error(3) Array Description
+----------+--------------------------------------+---+
|Array key | | |
| | | |
| | Type | |
| | | |
| | Description | |
| | | |
+----------+--------------------------------------+---+
| | | |
| code | | |
| | | |
| | | |
| | integer | |
| | | |
| | The Oracle error number. | |
| | | |
| | | |
| message | | |
| | | |
| | | |
| | string | |
| | | |
| | The Oracle error text. | |
| | | |
| | | |
| offset | | |
| | | |
| | | |
| | integer | |
| | | |
| | The byte position of an error in | |
| | the SQL statement. If there was no | |
| | statement, this is 0 | |
| | | |
| | | |
| sqltext | | |
| | | |
| | | |
| | string | |
| | | |
| | The SQL statement text. If there | |
| | was no statement, this is an empty | |
| | string. | |
| | | |
+----------+--------------------------------------+---+
EXAMPLES
Example #1
Displaying the Oracle error message after a connection error
<?php
$conn = oci_connect("hr", "welcome", "localhost/XE");
if (!$conn) {
$e = oci_error(); // For oci_connect errors do not pass a handle
trigger_error(htmlentities($e['message']), E_USER_ERROR);
}
?>
Example #2
Displaying the Oracle error message after a parsing error
<?php
$stid = oci_parse($conn, "select ' from dual"); // note mismatched quote
if (!$stid) {
$e = oci_error($conn); // For oci_parse errors pass the connection handle
trigger_error(htmlentities($e['message']), E_USER_ERROR);
}
?>
Example #3
Displaying the Oracle error message, the problematic statement, and the position of the problem of an execution error
<?php
$stid = oci_parse($conn, "select does_not_exist from dual");
$r = oci_execute($stid);
if (!$r) {
$e = oci_error($stid); // For oci_execute errors pass the statement handle
print htmlentities($e['message']);
print "
<pre>
";
print htmlentities($e['sqltext']);
printf("
%".($e['offset']+1)."s", "^");
print "
</pre>
";
}
?>
PHP Documentation Group OCI_ERROR(3)