The Oracle driver seems to not support PDO::getAttribute():
ociPHP Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[IM001]: Driver does not support this function: driver does not support getting attributes' in ...
PDO::getAttribute
(PHP 5 >= 5.1.0, PECL pdo >= 0.2.0)
PDO::getAttribute — Bir veritabanı bağlantı özniteliğinin değerini döndürür
Açıklama
Bir veritabanı bağlantı özniteliğinin değerini döndürür.
Bazı veritabanı/sürücü çiftlerinin veritabanı bağlantı özniteliklerinin tamamını desteklemeyebileceğini unutmayınız.
Değiştirgeler
-
öznitelik -
PDO::ATTR_* sabitlerinden biri. Sabitlerin açıklamaları için Öntanımlı Sabitler sayfasına bakınız. Veritabanı bağlantılarına uygulanabilecek sabitler:
- PDO::ATTR_AUTOCOMMIT
- PDO::ATTR_CASE
- PDO::ATTR_CLIENT_VERSION
- PDO::ATTR_CONNECTION_STATUS
- PDO::ATTR_DRIVER_NAME
- PDO::ATTR_ERRMODE
- PDO::ATTR_ORACLE_NULLS
- PDO::ATTR_PERSISTENT
- PDO::ATTR_PREFETCH
- PDO::ATTR_SERVER_INFO
- PDO::ATTR_SERVER_VERSION
- PDO::ATTR_TIMEOUT
Dönen Değerler
Başarısızlık durumunda NULL yoksa istenen PDO özniteliğinin değerini
döndürür.
Örnekler
Örnek 1 - Veritabanı bağlantı özniteliklerinin öğrenilmesi
<?php
$conn = new PDO('odbc:sample', 'db2inst1', 'ibmdb2');
$attributes = array(
"AUTOCOMMIT", "ERRMODE", "CASE", "CLIENT_VERSION", "CONNECTION_STATUS",
"ORACLE_NULLS", "PERSISTENT", "PREFETCH", "SERVER_INFO", "SERVER_VERSION",
"TIMEOUT"
);
foreach ($attributes as $val) {
echo "PDO::ATTR_$val: ";
echo $conn->getAttribute(constant("PDO::ATTR_$val")) . "\n";
}
?>
Ayrıca Bakınız
- PDO::setAttribute() - Bir öznitelik tanımlar
- PDOStatement::getAttribute() - Bir deyim özniteliğinin değerini döndürür
- PDOStatement::setAttribute() - Bir deyim özniteliğini tanımlar
peter dot hopfgartner at r3-gis dot com
08-Sep-2009 01:44
Tim
11-Jan-2007 08:20
If you want to retreive the Database type connection you can use the constant:
ATTR_DRIVER_NAME
$pdo_connection->getAttribute(constant("PDO::ATTR_DRIVER_NAME"))
Although i do not know if all drivers support this contant
