您的位置:首页 > 数据库 > Oracle

laravel5.3连接oracle数据库

2019-04-13 20:55 711 查看

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.csdn.net/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类:
修改:

Yajra\Oci8\Oci8ServiceProvider::class,

8.进行测试:

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


测试结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: