2013-11-28 204 views
2

繼承人我的代碼PDO PHP Oracle連接

$database = ' 
    (DESCRIPTION = 
     (ADDRESS_LIST = 
     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.8.28)(PORT = 1521)) 
    ) 
    (CONNECT_DATA = 
     (SERVICE_NAME = orcl) 
    ) 
    )'; 


    $db = new PDO('oci:dbname='.$database, 'middleuser', '1'); 


    $sth = $db->prepare('SELECT * from BD_CENTERDEPT'); 
    $sth->execute(); 

    while($row = $sth->fetch(PDO::FETCH_OBJ)) { 

     echo $row->NAME."\n"; 

    } 

顯示任何錯誤,但是爲什麼呢?我正在使用Oracle即時客戶端。 我已經創造了環境變量的路徑 「C:\ XAMPP \ instantclient_12_1」 在我的php.ini IAM

,並已經取消註釋 「延長= php_pdo_oci.dll」 相當肯定

BD_CENTERDEPT有NAME列和關於它的數據。

沒有錯誤,但沒有顯示數據?我怎麼知道我是否真的連接到oracle數據庫?

+0

設置'使用error_reporting(E_ALL);'在最開始你的腳本。 – TiMESPLiNTER

+0

您可能需要做的事情不僅僅是編程。 Pinging 192.168.8.28怎麼樣?還可以通過使用Oracle的查詢工具檢查端口是否真的可以訪問。如果是的話,PDO類的實例化怎麼樣?可能有問題... – daison12006013

回答

-1

耶我在查詢忘記數據庫名稱:)必須

$db->prepare('SELECT * from dbname.BD_CENTERDEPT')