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.
Salio a la luz ruby enterprise edition
Salio rubyenterprice ideal para servidores de alto trafico, vps, hosting compartido, mejora en el consumo de memoria, una gran alternativa a los clasicos mongreles.
Mejorar la conexión a Oracle con Rails 2.1
Dentro del trabajo con Oracle y Rails, existen dos gemas que nos permiten conectar y manipular los datos estas son las gemas OCI-8 y active-record-oracle-adapter, pero existen algunos fallos dentro del Active-Record-Oracle-Adapter, uno lo indique en un post anterior, es por eso que en rayapps se escribe sobre como mejorar algunas cosas a este adaptador, es por eso que el autor de esos post publica ahora una gema que tiene incluido los patch y algunas mejoras esto es la gema activerecord-oracle_enhanced-adapter
Su instalación es simple:
gem install activerecord-oracle_enhanced-adapter
Tiene muchas características que se describen aquí.
Para su utilización simplemente se debe cambiar dentro del database.yml el adapter de oracle a oracle_ enhanced
development:
adapter: oracle_enhanced
database: wiebia
username: scott
password: gotama
Un gran aporte para los que trabajamos con oracle
Lanzamiento de Rails 2.1 y ruby 1.8.7
Parece que la RailsConf 2008 nos tiene traera bastantes sorpresas ya que anuncian el lanzamiento oficial de la version 1.8.7 del lenguaje de programacion ruby, que esta lista para bajar desde aqui.
Ademas se lanza oficialmente la tan esperada version 2.1 de Rails, que creo esperaron para lucirse en la RailsConf 2008, si quieres aprender/saber sobre las nuevas caracteristicas de Rails que ofrece las encontraras en :
Y por ultimo se anuncia la version 2.0 de Passanger, que soporta ahora Rack.
Tantas buenas noticias para un lunes ![]()

