带有 db oracle 的 zend 框架 2

zend framework 2 with db oracle

我用的是xamppv3.2.2 使用 PHP 版本 5.6.14 使用 windows 8.1 使用 zend 框架 2

我尝试连接到 Oracle 数据库(在其他远程机器上)

我可以尝试设置环境变量。

但我总是收到相同的错误消息:

Zend\Db\Adapter\Exception\RuntimeException

File: C:\xampp\htdocs\zendframework\zend-db\src\Adapter\Driver\Oci8\Oci8.php:149

"The Oci8 extension is required for this adapter but the extension is not loaded"

请帮帮我

谢谢

您需要为 PHP 安装 Oci8 扩展。通常您只需要将 php.ini 中的行 ;extension=php_oci8.dll 更改为 extension=php_oci8.dll 并重新启动服务器。

完整的安装说明可以在这里找到 http://php.net/manual/en/oci8.installation.php

您应该尝试使用 PDO 扩展程序。或者使用 mysqli 扩展名。了解更多信息,请访问 Php PDO extension.

测试代码:

$param = $_POST;
$db_username = "youusername";
$db_password = "yourpassword";
$db = "oci:dbname=yoursid";
$conn = new PDO($db,$db_username,$db_password);
$name = $param['module'];
$file = $param['file'];
$stmt = $conn->exec("INSERT INTO AL_MODULE (AL_MODULENAME, AL_MODULEFILE) VALUES ('$name', '$file')");

我使用:

'db2' => array(
'driver'    => 'Pdo',
'dsn'   => 'oci:dbname=(DESCRIPTION =
    (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = *.com)(PORT = 1521))
    )
    (CONNECT_DATA =
        (SERVICE_NAME = aprx)
    ))',
'username'      => 'yourUser', 
'password'      => 'yourPass',
'platform_options' => array('quote_identifiers' => false)
),

重要我设置: 'platform_options' => 数组('quote_identifiers' => 假) 在 dbOracle

上使用 sql 查询

感谢您的帮助@mega6382