laravel5.8(十四)连接oracle数据库

简介: 首先确定你的PHP已经支持oracle数据库的链接。PHP需要安装OCI8扩展。确定PHP可以链接ORACLE数据库之后。我们使用composer安装laravel支持oracle链接的插件 yajra/laravel-oci8欢迎访问个人博客 guanchao.site欢迎访问我的小程序:打开微信->发现->小程序->搜索“时间里的”一:使用composer安装 yajra/laravel-oci81 :运行如下命令:bash复制代码composer require yajra/laravel-oci82 :安装过程中可能会报错,不要纠结那些报错,最简单的解决办法:

首先确定你的PHP已经支持oracle数据库的链接。PHP需要安装OCI8扩展。

确定PHP可以链接ORACLE数据库之后。我们使用composer安装laravel支持oracle链接的插件 yajra/laravel-oci8

欢迎访问个人博客 guanchao.site

欢迎访问我的小程序:打开微信->发现->小程序->搜索“时间里的”

一:使用composer安装 yajra/laravel-oci8

1:运行如下命令:

bash

复制代码

composer require yajra/laravel-oci8

2:安装过程中可能会报错,不要纠结那些报错,最简单的解决办法:

试试

arduino

复制代码

php artisan cache:clear

如果这不起作用,请删除你的vendor目录和composer.lock文件并重新运行composer install

二:配置laravel使用oracle数据库

首先说明一下:我这里主要使用的是mysql数据库,oracle数据库只作为偶尔取数据使用。

1修改在config文件夹下的database.php\

如果你想默认使用oracle数据库,则需要修改:’default’ => env(‘DB_CONNECTION’, ‘oracle’),

但是我这里就不需要了。

增加如下:

dart

复制代码

'oracle' => [
            'driver'        => 'oracle',
            'tns'           => env('DB_TNS', ''),
            'host'          => env('DB_HOST', '10.0.101.177'),
            'port'          => env('DB_PORT', '1521'),
            'database'      => env('DB_DATABASE', 'MPPAYUAT'),
            'username'      => env('DB_USERNAME', 'payment'),
            'password'      => env('DB_PASSWORD', 'payment'),
            'charset'       => env('DB_CHARSET', 'AL32UTF8'),
            'prefix'        => env('DB_PREFIX', ''),
            'prefix_schema' => env('DB_SCHEMA_PREFIX', ''),
        ],

记得将数据改成你自己的。

具体链接数组信息请参照github

github.com/yajra/larav…

2修改ConnectionFactory.php中的createConnector函数和createConnection函数

(1):文件在vendor/laravel/framework/src/illuminate/Database/Connectors/ConnectionFactory.php

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

ini

复制代码

use YajraOci8ConnectorsOracleConnector;
use YajraOci8Oci8Connection;

(3):createConnector函数:

添加如下代码:

arduino

复制代码

case 'oracle':
                return new OracleConnector;

如下图所示:

image.png

(4):createConnector函数:

添加如下代码:

bash

复制代码

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

如下图所示:

image.png

3修改config/app.php\

在providers里面增加

arduino

复制代码

YajraOci8Oci8ServiceProvider::class,

4修改processInsertGetId函数\

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

ruby

复制代码

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

至此已完成了laravel链接oracle的所有配置支持

三:测试

ini

复制代码

$openList = DB::connection('oracle')->select("SELECT * FROM xxxxxx");
Var_dump($openList);

有结果,不报错,即成功。

有好的建议,,请在下方输入你的评论。

欢迎访问个人博客 guanchao.site

欢迎访问我的小程序:打开微信->发现->小程序->搜索“时间里的”

目录
相关文章
|
3月前
|
Oracle 关系型数据库 Linux
【赵渝强老师】Oracle数据库配置助手:DBCA
Oracle数据库配置助手(DBCA)是用于创建和配置Oracle数据库的工具,支持图形界面和静默执行模式。本文介绍了使用DBCA在Linux环境下创建数据库的完整步骤,包括选择数据库操作类型、配置存储与网络选项、设置管理密码等,并提供了界面截图与视频讲解,帮助用户快速掌握数据库创建流程。
363 93
|
2月前
|
Oracle 关系型数据库 Linux
【赵渝强老师】使用NetManager创建Oracle数据库的监听器
Oracle NetManager是数据库网络配置工具,用于创建监听器、配置服务命名与网络连接,支持多数据库共享监听,确保客户端与服务器通信顺畅。
200 0
|
3月前
|
SQL Java 关系型数据库
Java连接MySQL数据库环境设置指南
请注意,在实际部署时应该避免将敏感信息(如用户名和密码)硬编码在源码文件里面;应该使用配置文件或者环境变量等更为安全可靠地方式管理这些信息。此外,在处理大量数据时考虑使用PreparedStatement而不是Statement可以提高性能并防止SQL注入攻击;同时也要注意正确处理异常情况,并且确保所有打开过得资源都被正确关闭释放掉以防止内存泄漏等问题发生。
130 13
|
3月前
|
SQL 关系型数据库 MySQL
MySQL数据库连接过多(Too many connections)错误处理策略
综上所述,“Too many connections”错误处理策略涉及从具体参数配置到代码层面再到系统与架构设计全方位考量与改进。每项措施都需根据具体环境进行定制化调整,并且在执行任何变更前建议先行测试评估可能带来影响。
1042 11
|
3月前
|
SQL Oracle 关系型数据库
Oracle数据库创建表空间和索引的SQL语法示例
以上SQL语法提供了一种标准方式去组织Oracle数据库内部结构,并且通过合理使用可以显著改善查询速度及整体性能。需要注意,在实际应用过程当中应该根据具体业务需求、系统资源状况以及预期目标去合理规划并调整参数设置以达到最佳效果。
300 8
|
3月前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
148 3
|
3月前
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。
|
3月前
|
关系型数据库 MySQL 分布式数据库
阿里云PolarDB云原生数据库收费价格:MySQL和PostgreSQL详细介绍
阿里云PolarDB兼容MySQL、PostgreSQL及Oracle语法,支持集中式与分布式架构。标准版2核4G年费1116元起,企业版最高性能达4核16G,支持HTAP与多级高可用,广泛应用于金融、政务、互联网等领域,TCO成本降低50%。
|
3月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS费用价格:MySQL、SQL Server、PostgreSQL和MariaDB引擎收费标准
阿里云RDS数据库支持MySQL、SQL Server、PostgreSQL、MariaDB,多种引擎优惠上线!MySQL倚天版88元/年,SQL Server 2核4G仅299元/年,PostgreSQL 227元/年起。高可用、可弹性伸缩,安全稳定。详情见官网活动页。

热门文章

最新文章

推荐镜像

更多