adipriyantobpn/yii2-db-oracle

Oracle数据库的基础库和基础组件

1.0 2017-09-09 17:59 UTC

This package is not auto-updated.

Last update: 2024-09-29 04:03:29 UTC


README

Oracle数据库的基础库和基础组件

为什么使用这个包?

并不是所有开发者都能以SYSDBA角色访问Oracle DB。

在默认的 yii\db\oci\Schema 中,数据库连接必须指定可以访问 DBA_USERS 视图的用户。

请参考 findSchemaNames() 函数: https://github.com/yiisoft/yii2/blob/master/framework/db/oci/Schema.php

安装

安装此扩展的首选方式是通过 composer

运行以下命令之一:

php composer.phar require --prefer-dist adipriyantobpn/yii2-db-oracle "*"

"adipriyantobpn/yii2-db-oracle": "*"

将以下内容添加到您的 composer.json 文件的require部分:

用法

扩展安装后,您可以通过在您的 config.php 中配置db组件来访问Oracle DB,如下所示

'components' => [
    'db' => [
        'class' => 'adipriyantobpn\db\oracle\Connection',
        'host' => 'localhost',
        'port' => 1522 // default: 1521
        'sid' => 'XE'
        'dateFormat' => 'DD-MON-RR' // default: 'YYYY-MM-DD HH24:MI:SS'
    ],
]

使用上述配置格式,连接类将自动使用此模板构建Oracle DSN:

$this->dsn = "oci:dbname=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST={$this->host})(PORT={$this->port})))(CONNECT_DATA=(SID={$this->sid})))"

但如果您想以不同的格式配置DSN,您可以省略host、port和sid属性,如下所示:

'components' => [
    'db' => [
        'class' => 'adipriyantobpn\db\oracle\Connection',
        'dsn' => 'oci:dbname=//:1521/XE',
        'dateFormat' => 'DD-MON-RR' // default: 'YYYY-MM-DD HH24:MI:SS'
    ],
]