Codifíca.me | Desarrollo web | Programación | SEOCodifíca.me | Desarrollo web | Programación | SEO
  • Monetizar
    • Adsense
    • SEO
  • Desarrollo web
    • Php
    • WordPress
    • Blogger
    • Facebook (API)
      • Aplicación Test
      • Conectar con Facebook
      • Facebook en Español
      • Publicar Facebook
    • Google Maps
    • JavaScript
    • Opencart
    • Prestashop
    • XML
    • Flash
  • Bases de datos
    • Oracle
    • MySql
    • Data Mining
    • Forms
    • SGBD
  • Código
    • Android
    • Ensamblador
    • Código ensamblador
    • Java
    • ms-dos
    • Pro*C
    • Vb.net
  • Crear Blog
  • Cajon desastre
    • Redes
    • Arquitectura
    • Ubuntu
    • Hardware
    • Software
    • Consolas
    • Iphone
  • Tools
    • Get Backlinks
    • SQL 2 XML
    • Footprints enlaces

Lanzar procedimientos o funciones desde SQL Plus.

En este artículo explicaremos como lanzar procedimientos o funciones desde SQL Plus..

Antes de hablar de esto, un par de consejos.

Activar siempre el serveroutput on para poder verlo que devuelve por pantalla.
set serveroutput on
Cuando estéis compilando el proceso y os de error,  si poneis:
SQL> show errors
Os mostrará los errores de compilación que habéis tenido y con poner ed simplemente podreis editar e irlo cambiando, pero acordaos que esto no lo guarda, teneis que grabarlo como *sql.

Si ya tenemos el procedimiento o la función creada sin errores ya podemos lanzarlos:

1. Procedimientos:

BEGIN
Nombre_del_Package.Nombre_procedimiento(par1, par2, par3, …);
END;
/

O simplemente:

exec Nombre_procedimiento(par1, par2, par3, …);

Si el procedimiento tiene parámetros OUT de salida, hay que declararse las variables necesarias, con lo que hay que crear un cuerpo DECLARE BEGIN END;

set serveroutput on
BEGIN
V_Salida VARCHAR2(100);
Nombre_del_Package.Nombre_Procedimiento(V_Salida, ‘valor2′,…);
dbms_output.put_line (V_Salida);
END;
/

2. Funciones:

También podemos utilizar variables de salida para recuperar el valor.

set serveroutput on
DECLARE
retorno NUMBER(12.2);
BEGIN
retorno := fu_redondear(13279.3456);
dbms_output.put_line (retorno);
END;

O simplemente, siempre que no devuelva nada más que el valor del return.

Select nombre_funcion(par1, par2,…) from dual;

Os dejo un ejemplo de función con un parámetro salida y entrada (IN OUT):

CREATE OR REPLACE FUNCTION func_prueba (valorentrada IN OUT VARCHAR2)
RETURN VARCHAR2 IS
BEGIN
valorentrada := ‘HOLA’;
RETURN ‘SALIDA FUNCION’;
END func_prueba;
/

Para la ejecución:

set serveroutput on
DECLARE
salida VARCHAR2(20);
variableentrada VARCHAR2(20) := ‘ADIOS’;
BEGIN
dbms_output.put_line(‘Entrada Parametro: ‘ || variableentrada);
salida := func_prueba (variableentrada);
dbms_output.put_line(‘Salida Parametro: ‘ || variableentrada);
dbms_output.put_line(‘Return de la funcion : ‘ || salida);
END;
/

Lanzar procedimientos o funciones desde SQL Plus.
5 (100%) 1 vote

Miguel Ber
Miguel Ber Software Developer

Ingeniero informático y desarrollador de aplicaciones web. Experto en desarrollo web, Webmaster, e-commerce y SEO.

Code is {poetry}
¿Necesitas un desarrollador? Contáctame!
¿Tienes alguna pregunta? Te respondemos ya!!

Deja un comentario Cancelar respuesta

Tu dirección de correo electrónico no será publicada.

Síguenos en las redes

Facebook
Twitter
Google+
Skype
GitHub
  • portatil ingeniero Mejores Laptops para Ingenieros y estudiantes de Ingeniería
  • sillas-gamming Las 20 mejores sillas gaming y de oficina
  • Los mejores ordenadores portátiles para estudiantes 2019
  • ideapad 310 Review Lenovo Portátil Ideapad 310
  • hp Opinión Portátil HP 250 G6 | Review
  • Ordenador Portátil Convertible – Acer SP513 – Intel Core i5 – 8 GB RAM – 256 GB SSD
codifica.me
Este sitio emplea cookies para prestar sus servicios, para personalizar anuncios y para analizar el tráfico. Si utilizas este sitio web, se sobreentiende que aceptas el uso de cookies..Aceptar Leer más
Privacidad y Política de Cookies