laravel5.3连接oracle数据库

本文详细介绍了如何在Laravel框架中配置并连接Oracle数据库,包括下载OCI8扩展、配置php.ini、使用composer安装Yajra/laravel-oci8包、修改database.php文件以及测试连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.下载oracle教程
https://jingyan.baidu.com/article/363872eccfb9266e4aa16f5d.html
2.下载oci8相关扩展:http://pecl.php.net/package/oci8,将将解压出来php_oci8.dll、php_oci8_11g.dll、php_oci8_12c.dll文件放置于php的ext文件夹下。
3.再php.ini文件夹中开启扩展(将;去掉),没有则进行添加
extension=php_oci8_12c.dll
extension=php_oci8_11g.dll
extension=php_oci8.dll
4.进行测试,如果出现以下界面则说明开启扩展成功,这时候php就可以连接上oracle了。
在这里插入图片描述
oci8连接oracle数据库:

$conn = oci_connect('test', 'test', 'localhost/ORCL');
       if (!$conn) {
           $e = oci_error();
           print htmlentities($e['message']);exit;
       }else {
           echo "连接成功!";
       }

5.laravel连接oracle数据库:
参考网址:https://blog.youkuaiyun.com/q393364227/article/details/78458690、https://packagist.org/packages/yajra/laravel-oci8
使用composer来加载第三方的包:

composer require yajra/laravel-oci8:”5.3.*“; 

6.修改conif文件夹下的database.php文件
添加代码:
修改默认数据库连接:

'default' => env('DB_CONNECTION', 'oracle'),


添加orcle相关参数:

'oracle' => [
            'driver' => 'oracle',
            'host' => 'localhost',
            'port' => '1521',
            'database' => '',
            'service_name' => 'ORCL',
            //自己再oracle中创建的用户名和密码
            'username' => 'test',
            'password' => 'test',
            'charset' => 'utf8',
            'prefix' => '',
        ]

7.vendor/laravel/framework/src/illuminate/Database/Connectors/ConnectionFactory.php类中添加:
createConnector方法:

case 'oracle':
                return new OracleConnector;

createConnection方法:

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

config/app.php文件:
providers数组中增加Yajra\Oci8\Oci8ServiceProvider::class,
vendor/yajra/laravel-oci8/src/Oci8/Query/processors/OracleProcessor.php类:
修改:processInsertGetId方法

 $statement->bindParam($parameter, $id, PDO::PARAM_INT, 20);

8.进行测试:

 $user=DB::table('testtable')->get();
       dump($user);exit();

在这里插入图片描述
测试结果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值