laravel连接oracle

这里的前提是OCI驱动已经可以连接oracle了

具体配置可以参见http://lxfamn.cn/blog/?p=3081

$conn = oci_connect('scott', 'tiger', '10.100.21.112:1521/oracdb');
if (!$conn) {
    $e = oci_error();
    print htmlentities($e['message']);
    exit;
}else {
    echo "连接oracle成功!";
}

正文

使用composer安装 yajra/laravel-oci8

注意安装对应版本的否则报错

yajra/laravel-oci8[dev-master, v9.0.0, ..., 9.x-dev] require illuminate/data
版本对应信息查看:https://packagist.org/packages/yajra/laravel-oci8

composer require yajra/laravel-oci8 8.6.2

文件在vendor/laravel/framework/src/illuminate/Database/Connectors/ConnectionFactory.php

(2):添加如下的命名空间引用:

use Yajra\Oci8\Connectors\OracleConnector;
use Yajra\Oci8\Oci8Connection;

createConnector

case 'oracle':
                return new OracleConnector;

createConnection

case 'oracle':
                return new Oci8Connection($connection, $database, $prefix, $config);

修改config/app.php

在providers里面增加


Yajra\Oci8\Oci8ServiceProvider::class,

修改 processInsertGetId 函数

(在vendor/yajra/laravel-oci8/src/Oci8/Query/processors/OracleProcessor.php)

$statement->bindParam($parameter, $id, PDO::PARAM_STR, 20);//PDO::PARAM_STR 主键的 数据类型

转载请注明出处:

转载自http://lxfamn.cn/blog

未经允许不得转载:lxfamn » laravel连接oracle

赞 (0) 打赏

置顶推荐

评论 0

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏