2011-01-11 58 views
1

我已经安装了WAMP服务器。将adodb连接到Oracle时发生错误

当试图连接到Oracle它给这个错误:

ORA-12541: TNS:no listener

有谁知道如何解决这个问题?

+2

您的监听程序未启动('lsnrctl start`)或您的tnsnames.ora错误。 – 2011-01-11 13:27:37

回答

1

您的听众未启动(发出命令lsnrctl start)或您的tnsnames.ora错误。

0

在php.ini文件中进行更改 通过删除来启用oci驱动程序取消注释;分号 检查正确的dll文件 然后

试试这个简单的类

class AdoConnection { 

    public $dbh; 

    public function __construct() { 
     include_once '../adoconnection/adodb5/adodb.inc.php'; // include your adodb.inc.php file 

     $server = "127.0.0.1"; 
     $user = "USER/SCHEMA/Database"; 
     $pwd = "password"; 
     $db  = "SID OR Service_Name"; 

     $this->dbh = NewADOConnection('oci8'); 
     $this->dbh->Connect(FALSE, $user, $pwd, '(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = ' . $server. ')(PORT = 1521)) (CONNECT_DATA = (SERVICE_NAME = ' . $db . ') (SID = ' . $db . ')))'); 
    } 

    public function select($sql) { 
     $result = $this->dbh->Execute($sql); 
     $result = $result->GetRows(); 
     return $result; 
    } 

    public function insert($sql) { 
     $result = $this->dbh->Execute($sql); 
     return $result; 
    } 
} 

$dbh = new AdoConnection(); 

$dbh->select($sql); 
$dbh->insert($sql); 

只要保持你的error_reporting和display_errors设置在看到错误。

ini_set('display_errors',1); 
error_reporting(E_ALL);