PHP pdo远程连接到Oracle错误

时间:2014-10-14 13:54:03

标签: php oracle pdp

我一直在尝试使用pdo远程连接到oracle 我启用了pdo驱动程序

extension=php_pdo_odbc.dll

但是收到此错误

  

“SQLSTATE [HY000]:OCIEnvNlsCreate:检查字符集是否有效以及PHP是否可以访问Oracle库和NLS数据(\ text \ pdo_oci \ oci_driver.c:614)”

这是我的连接代码

try {
    $dbh = new PDO("oci:dbname='My server ip'/orcl;charset=UTF-8", "my user name", "my password");

    }
catch (PDOException $e)
    {     echo $e->getMessage();     }

1 个答案:

答案 0 :(得分:0)

安装ODAC / ODT的多个副本后,我遇到了同样的错误消息,因为我不知道将Visual Studio项目(Windows窗体应用程序和ASP.NET网站)连接到Oracle数据库需要什么版本。在最终修复此连接问题的同时,我打破了我的PHP / PDO网站,该网站也需要连接到同一个Oracle数据库。它给了我与你的问题相同的错误消息。 我删除了所有ODAC / ODT客户端安装以及Oracle服务器以确定,然后我重新安装了Oracle服务器(在我的情况下是Oracle 11.2 Express 64位)并且它再次运行。我可以再次从SQL Developer连接,也可以通过PHP / PDO连接。之后我安装了正确的ODAC / ODT(32位(!)版本,因为我的32位Visual Studio),现在我的Visual Studio Forms项目和ASP.NET网站也可以连接到Oracle服务器。