Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Laravel / Conexión a base de datos Oracle con Laravel

Conexión a base de datos Oracle con Laravel

Autor jc mouse jueves, octubre 22, 2020

En esta ocasión aprenderemos a conectaros con una base de datos Oracle desde Laravel. Es un tutorial sencillo y cortito, pero eso si, se requiere de varias herramientas y conocimientos sobre base de datos, servidores web, proyectos en laravel y sistemas operativos. Comencemos.

¿Qué necesitamos?

  • Visual Studio Code
  • Un nuevo proyecto en Laravel
  • Composer
  • Driver laravel-oci8
  • Servidor Apache. Con XAMPP nos basta y sobra
  • Biblioteca Instant-Client de Oracle
  • Base de datos Oracle local o remota

Nivel: Intermedio

Paso 1. Biblioteca Instant-Client

La biblioteca de Oracle Instant Client nos permite que las aplicaciones se conecten a una base de datos Oracle ya sea local o remota. Para descargar la biblioteca ingresa Oracle Instant Client y luego a la sección de descargas donde se debe seleccionar el sistema operativo, para nuestro ejemplo Windows. Un detalle importante, aun si tu SO es de 64 bits, descarga la biblioteca para 32 bits.

La última versión de la biblioteca es la 19.8, para el ejemplo de este tutorial utilizaremos Basic Package instantclient-basic-nt-12.2.0.1.0.zip  (requiere registro), la razón es que tengo instalado Microsoft Visual Studio 2013 y me dio pereza actualizar a 2017. Continuemos

Una vez descargado la librería, descomprime en algún lugar de tu computadora, yo lo hice en «D:\Oracle\instantclient_12_2», anota esa ruta ya que luego debes agregar la misma en el PATH del sistema y reiniciar el equipo.

Paso 2. Habilitar Instant-Client en el servidor

Ahora debemos habilitar la biblioteca en XAMPP.

Abre el archivo php.ini ubicado en xampp/php/ y busca la línea «;extension=oci8_12c», borra el punto y coma «;» y guarda los cambios.

Reinicia el servidor y abre phpinfo.php, busca OCI8 para comprobar que la extensión esta habilitada.

oci8 apache xampp

Hasta aquí, la conexión a Oracle debería funcionar correctamente, pero y si no entonces debemos realizar lo siguiente:

EXTRA: Abre la carpeta de instantclient_12_2/ y copia todas as *.dll que encuentres, ve a xampp/php/ y pega las librerías, haz lo mismo con /xampp/php/ext/, es decir, pega también ahí las librerías de instantclient_12_2/. Realiza esta acción solo si más adelante tienes problemas al conectar con Oracle.

Paso 3. laravel-oci8

Laravel-OCI8 es un paquete que te permite comunicar Laravel con Oracle, el proyecto se encuentra bajo la licencia del The MIT License (MIT).

Abre tu proyecto Laravel con VSC y luego una nueva terminal. Escribe el siguiente comando para instalar laravel-oci8:

composer require yajra/laravel-oci8:^X

donde en X, se debe indica la versión del proyecto Laravel.

Una vez terminada la instalación, se debe registrar laravel-oci8, para ello abrir el archivo app.php de la carpeta config/ y agregar en provider:

Yajra\Oci8\Oci8ServiceProvider::class,

Paso 4. Configuración de la conexión a Oracle

Abre el archivo .env e introduce tu configuración para Oracle:

configuracion a base de datos oracle

En una terminal escribe:

php artisan vendor:publish –tag=oracle

Lo que hace este comando es crear un archivo oracle.php en la carpeta config/, el contenido es el siguiente:

archivo de configuracion

Finalmente copie el contenido de oracle.php en en el archivo database.php  y guarde los cambios.

Paso 5. Conexión a base de datos Oracle

Abra el archivo web.php de la carpeta routes/ y reemplace la ruta por defecto por:

controlador de recursos

Cree un controlador de recursos con el nombre de DummysController y agrega el siguiente código:

codigo php

Abre tu aplicación en el navegador y si todo salió correctamente podrás ver algo como esto:

yeahhhhh funciona

enjoy!!!

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Compartir imagen desde android – Share Image

Compartir imagen desde android – Share Image

En este post crearemos una aplicación android que nos permitirá compartir una imagen con Facebook, whatsapp, bluetooth,...

Gráfico de lineas con jfreechart

Gráfico de lineas con jfreechart

Los gráficos de líneas muestran una serie como un conjunto de puntos conectados mediante una línea. Los valores se repre...

Animación de JProgressBar con hilos

Animación de JProgressBar con hilos

Si nuestra aplicación tiene que llevar a cabo un cierto trabajo que no sabemos cuanto durará y que a la vez consume much...

Pruebas funcionales con AssertJ Swing

Pruebas funcionales con AssertJ Swing

AssertJ Swing es una biblioteca para Java que proporciona una interfaz fluida para la realización automatizada de prueba...

La era de la Inteligencia Artificial

La era de la Inteligencia Artificial

The Age of AI o «La era de la Inteligencia Artificial»,  es una serie de 8 documentales de Youtube Original, presentados...

Conexión a múltiples bases de datos en Laravel

Conexión a múltiples bases de datos en Laravel

En este tutorial conoceremos una forma de conectar una aplicación en Laravel con tres bases de datos diferentes, 2 en My...

Comparte lo que sabes

Categorias

Últimas entradas

Muchas veces necesitamos de fotos para adornar nuestros perfiles en RRSS pero no queremos subir nuestras propias fotos p...

En esta ocasión aprenderemos a conectaros con una base de datos Oracle desde Laravel. Es un tutorial sencillo y cortito,...

En este tutorial conoceremos una forma de conectar una aplicación en Laravel con tres bases de datos diferentes, 2 en My...

Existen muchas plataformas CMS de código abierto excelentes, como Joomla y WordPress, así como algunas plataformas emerg...

Herramientas

Generador de Enlaces a Whatsapp