For more information on using advanced functionality in the Oracle driver, read the Advanced Oracle Tutorial
Driver Name | oci8 |
---|---|
Data Provider | oracle |
Status | Active1) |
Windows | Yes |
Unix | Yes |
ADOdb V5 | Yes |
ADOdb V6 | Yes |
Alternative Drivers
PDO driver for Oracle
ADO driver for Oracle
This is the preferred driver for connecting to Oracle databases Despite its name, this driver supports Oracle databases up to and including Oracle 11.
Non portable methods are not declared in the base class. Use of these methods in portable code will cause a fatal error when used with other drivers.
The following non-portable methods are available to this driver
Method | Description |
---|---|
bind() | A fast way of updating records |
executeCursor() | Returns a cursor to procedure as a handle |
a. PHP and Oracle reside on the same machine, use default SID, with non-persistent connections:
$conn = NewADOConnection('oci8'); $conn->connect(false, 'scott', 'tiger');
b. TNS Name defined in tnsnames.ora (or ONAMES or HOSTNAMES), eg. 'myTNS':
$conn = NewADOConnection('oci8'); $conn->connect(false, 'scott', 'tiger', 'myTNS');
or
$conn->connect('myTNS', 'scott', 'tiger');
c. Host Address and SID
$conn->connectSID = true; $conn->connect('192.168.0.1', 'scott', 'tiger', 'SID');
d. Host Address and Service Name
$conn->connect('192.168.0.1', 'scott', 'tiger', 'servicename');
e. Oracle connection string:
$cstr = "(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP) (HOST=$host) (PORT=$port) ) (CONNECT_DATA=(SID=$sid) ) )"; $conn->connect($cstr, 'scott', 'tiger');
f. ADOdb data source names (dsn):
$dsn = 'oci8://user:pwd@tnsname/?persist'; # persist is optional $conn = ADONewConnection($dsn); # no need for Connect/PConnect
$dsn = 'oci8://user:pwd@host/sid'; $conn = ADONewConnection($dsn);
$dsn = 'oci8://user:pwd@/'; # oracle on local machine $conn = ADONewConnection($dsn);
With ADOdb data source names, there is no need to call connect()
or pConnect()
as this is done automatically.
By default, after connection the following SQL is issued:
"ALTER SESSION SET NLS_DATE_FORMAT='".$this->NLS_DATE_FORMAT."'"
The default value for NLS_DATE_FORMAT
is YYYY-MM-DD
. To include time as well, use RRRR-MM-DD HH24:MI:SS
or set the value to empty to disable this action.
Driver Name | oci8po |
---|---|
Data Provider | oracle |
Status | Active2) |
Windows | Yes |
Unix | Yes |
ADOdb V5 | Yes |
ADOdb V6 | Yes |
This driver extends the oci8 driver and provides compatibility with other database drivers such as MySQL and SQL Server. Use this version of the driver if you are writing portable code.
Driver Name | oci805 |
---|---|
Data Provider | oracle |
Status | Inactive3) |
Windows | Yes |
Unix | Yes |
ADOdb V5 | Yes |
ADOdb V6 | Yes |
This driver provides an undocumented enhancement to the oci8 driver
Driver Name | oci805cus |
---|---|
Data Provider | oracle |
Status | Inactive4) |
Windows | Yes |
Unix | Yes |
ADOdb V5 | Yes |
ADOdb V6 | Yes |
This driver provides an undocumented enhancement to the oci8 driver
Support for oracle databases versions 7 and lower was removed in PHP version 5.1. In ADOdb version 6, the Oracle driver will be removed and the oci8 driver will become the oracle driver
Driver Name | oracle |
---|---|
Data Provider | oracle |
Status | Obsolete5) |
Windows | Yes |
Unix | Yes |
ADOdb V5 | Yes |
ADOdb V6 | No |
This driver provided support to oracle 7 and lower databases. The driver is obsolete, and not supported by PHP and will be removed in ADOdb version 6.0 The data provider name 'oracle' will be assigned to the oci8 driver. The oci8 driver will become a stub to provide backwards compatibility.