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

PicarOS: Sistema Operativo Educativo para niños

PicarOS: Sistema Operativo Educativo para niños

PicarOS Diego es una distribución GNU/Linux basada en Debian enfocada principalmente en la educación dentro del aula rec...

Entornos de programación visual para Arduino

Entornos de programación visual para Arduino

A continuación dejo a consideración 4 entornos de desarrollo visual para Arduino todos gratuitos y de código abierto. Si...

Introducción a Scene Builder y MVC (Parte II)

Introducción a Scene Builder y MVC (Parte II)

Segunda parte del tutorial [Introducción a Scene Builder y MVC (Parte I)]. En esta segunda parte, completaremos el diseñ...

Tradukisto: Conversión de dinero en palabras

Tradukisto: Conversión de dinero en palabras

Tradukisto es una biblioteca para Java 8 creada para convertir números enteros o cantidades de dinero a sus equivalentes...

Método de la Regla Falsa o Regula Falsi

Método de la Regla Falsa o Regula Falsi

Este método, también conocido como método de interpolación lineal, es un método iterativo de resolución numérica de ecua...

Sub Tablas: Agregar tablas dentro de otras tablas en Java

Sub Tablas: Agregar tablas dentro de otras tablas en Java

El JTable de Java es un gran componente para mostrar datos en una tabla de una forma rápida y sencilla, sin embargo en v...

Comparte lo que sabes

Categorias

Últimas entradas

Una clase JTree permite mostrar datos de una forma jerárquica y en realidad este objeto no contiene sus datos; es decir,...

Los archivos digitales (txt, docx, xlsx, odt, odp, pdf, etc) nos permiten almacenar información el cual en ocasiones, de...

En este post crearemos un botón swing que reproducirá un sonido cuando este sea presionado por el usuario.  Sin mas que...

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

Herramientas

Generador de Enlaces a Whatsapp