Archivos en la categoría pl-sql

Llamar a procedimientos PL/SQL de Oracle con ruby-plsql

Buscando una manera mas sencilla de poder llamar a procedimientos almacenados de Oracle pl/sql, encontré la gema ruby-plsql que es una simple API para procedimientos almacenados en oracle, su uso es muy sencillo como el siguiente:

Si tenemos el siguiente paquete:


CREATE OR REPLACE PACKAGE BODY scott.pck_prueba IS
    PROCEDURE LeeDatos(p_in VARCHAR2, p_out OUT VARCHAR2) IS
       BEGIN
       p_out := 'Se introdujo: ' || p_in;
    END;
END;

Ahora dentro del código, como ejemplo dentro del controlador:


require “ruby_plsql”
class UsuariosController < ApplicationController
  def index
    @usuarios = Usuario.all
    plsql.connection = OCI8.new(”SCOTT”, “PASS”)
    @hola = plsql.pck_prueba.LeeDatos(”Hola desde Oracle”)
    plsql.logoff
  end
end

Y para mostrar el dato, en la vista:


<%= @hola[:p_out] %>

Para poder instalar la gema solamente teclee:

[sudo] gem install ruby-plsql

Realmente me facilito bastante el trabajo, me gusta el concepto y el uso que engloba la metaprogramacion.

Nota.- Trabajando con la gema note que no trabaja en procedimientos con variables de entrada y salida, sino solamente de entrada o salida.