Funciones y procedimientos
Publicado por Wilbert Herrera Flores en Abril 17, 2008
Es posible crear funciones en Informix? La respuesta es si, pondremos un ejemplo sencillo:
create function sumar(a integer, b integer) returning integer
return a + b;
end function ;
La anterior función simplemente suma dos enteros, y
create procedure sumar(a integer, b integer) returning integer
return a + b;
end procedure ;
También suma dos enteros, entonces cuál es la diferencia? Ninguna, para Informix ambas definiciones son similares, si se declara ambas expresiones en un mismo código el segundo creará un error que nos dice que ya existe una rutina con el mismo nombre.
Por lo tanto es indistinto crear funciones o procedimientos, claro está que estos deben retornar algún valor, y lo mismo es llamar ya sea con procedure o function, es decir si declaramos como Función uno puede ejecutarlos:
execute function sumar(2,4);
o
execute procedure sumar(2,4);
o en una consulta
select sumar(ord_cantact, ord_cantant)
from orders;
Y lo mismo ocurre si se declara como Procedimiento.
Marcelo Mereles escribió
Muy buena explicacion, Gracias por el Aporte.
Wilbert Herrera Flores escribió
Estamos pa servirle