miércoles, 13 de julio de 2011

Procedimientos almacenados (I)

  • Oracle SQL Developer.
 
Diseñador del oracle Developer con herramienta para el Visual Studio .NET le hacen más fácil para construir las aplicaciones de Banco de datos enWindows. Con un juego herméticamente integrado de herramientas para el Visual Studio.NET, también es una herramienta que nos permite crearformularios locales, es decir, mediante esta herramienta nosotros podemos crear formularios, compilarlos y ejecutarlos, pero si queremos que los otros trabajen sobre este formulario deberemos copiarlo regularmente en una carpeta compartida para todos, de modo que, cuando quieran realizar cambio, deberán copiarlo de dicha carpeta y luego volverlo a subir a la carpeta.
Diseñadores pueden hacer uso de nuevos rasgos versátiles, como:
* La generación de código automáticamente
* Diseñadores Poderosos y magos
* Contexto-sensible la ayuda en línea
* El fácil uso de procedimientos para guardarlos en le editor
Las aplicaciones de Banco de datos de Oracle en vías de desarrollo en Windows nunca habían sido más fáciles.
Hasta hace poco esta nueva versión estaban en fase beta y soportaban básicamente la versión 1.X de .NET. Ahora ya disponemos con esta nueva versión el soporte para ambas versiones.
Versiones del Oracle Developer
Oracle Developer Tools for Visual Studio .NET 2003 10.2.0.2.20
Oracle Developer Tools for Visual Studio 2005 10.2.0.2.20
Oracle Forms Server 6i and Oracle Developer Server 6i patchset 3 (Forms 6.0.8.12.1)
Oracle forms server and Oracle developer server 6.0 (forms 6.05.34.0)
Oracle forms server and Oracle developer server 2.1 (forms 5.0.6.21.0)
Oracle forms server and Oracle developer server 1.6.1 (forms 4.5.10.17)
  1. Oracle es una potente herramienta cliente/servidor para la gestión de Bases de Datos para su utilización primero sería necesario la instalación de la herramienta servidor (Oracle 8i) y posteriormente podríamos atacar a la base de datos desde otros equipos con herramientas de desarrollo como Oracle Designer y Oracle Developer, que son las herramientas básicas de programación sobre Oracle.
    Para desarrollar en Oracle utilizamos PL/SQL un lenguaje de 5ª generación, bastante potente para tratar y gestionar la base de datos, también por norma general se suele utilizar SQL al crear un formulario.
    Es posible lógicamente atacar a la base de datos a través del SQL plus incorporado en el paquete de programas Oracle para poder realizar consultas, utilizando el lenguaje SQL.
    Oracle Developer
    Es una herramienta que nos permite crear formularios en local, es decir, mediante esta herramienta nosotros podemos crear formularios, compilarlos y ejecutarlos, pero si queremos que los otros trabajen sobre este formulario deberemos copiarlo regularmente en una carpeta compartida para todos, de modo que, cuando quieran realizar un cambio, deberán copiarlo de dicha carpeta y luego volverlo a subir a la carpeta. Este sistema como podemos observar es bastante engorroso y poco fiable pues es bastante normal que las versiones se pierdan y se machaquen con frecuencia. La principal ventaja de esta herramienta es que es bastante intuitiva y dispone de un modo que nos permite componer el formulario, tal y como lo haríamos en Visual Basic o en Visual C, esto es muy de agradecer.
    1.3 PRINCIPALES CARACTERÍSTICAS
    Poderoso Editor PL/SQL. Con su sintaxis destacada, SQL y PL/SQL help, Descripción de objetos y muchas otras sofisticadas características, el editor impresiona a los mas exigentes usuarios.
    Depurador (debugger) integrado. Ofrece todas las opciones que pueda desear: Step In, Step Over, Step Out, etc.
    Query Builder. Esta herramienta gráfica hace fácil crear nuevas expresiones o modificar las existentes.
    PL/SQL Beautifier. Le permite formatear el código a través de unas reglas definidas por el usuario.
    SQL Window. Le permite ingresar cualquier expresión SQL y ver y editar los resultados fácilmente.
    Command Window. Para desarrollar y ejecutar scripts sin tener que dejar el confortable PL/SQL Developer IDE.
    Reportes. Le permite usar facilmente reportes standard o reportes creados por usted mismo.
    Proyectos. PL/SQL le permite organizar los items de proyectos que usted necesite, compilarlos, moverlos de un proyecto a otro.

  • PROCEDIMIENTOS ALMACENADOS

   Un procedimiento es un subprograma que ejecuta una acción especifica y que no devuelve ningún valor. Un procedimiento tiene un nombre, un conjunto de parámetros (opcional) y un bloque de código.
    La sintaxis de un procedimiento almacenado es la siguiente:

CREATE [OR REPLACE] 
PROCEDURE <procedure_name> [(<param1> [IN|OUT|IN OUT] <type>, 
                             <param2> [IN|OUT|IN OUT] <type>, ...)] 
IS  -- Declaracion de variables locales
BEGIN
  -- Sentencias
[EXCEPTION]
  -- Sentencias control de excepcion
END [<procedure_name>];

    El uso de OR REPLACE permite sobreescribir un procedimiento existente. Si se omite, y el procedimiento existe, se producirá, un error.

    La sintaxis es muy parecida a la de un bloque anónimo, salvo porque se reemplaza la seccion DECLARE por la secuencia PROCEDURE ... IS en la especificación del procedimiento.

    Debemos especificar el tipo de datos de cada parámetro. Al especificar el tipo de dato del parámetro no debemos especificar la longitud del tipo.

    Los parámetros pueden ser de entrada (IN), de salida (OUT) o de entrada salida (IN OUT). El valor por defecto es IN, y se toma ese valor en caso de que no especifiquemos nada.



CREATE OR REPLACE 
PROCEDURE Actualiza_Saldo(cuenta NUMBER, 
                          new_saldo NUMBER)
IS  -- Declaracion de variables locales
BEGIN
  -- Sentencias
  UPDATE SALDOS_CUENTAS 
 SET SALDO = new_saldo, 
            FX_ACTUALIZACION = SYSDATE
  WHERE CO_CUENTA = cuenta;

END Actualiza_Saldo; 

     También podemos asignar un valor por defecto a los parámetros, utilizando la clausula DEFAULT  o el operador de asiganción (:=) .





CREATE OR REPLACE 
PROCEDURE Actualiza_Saldo(cuenta NUMBER, 
                          new_saldo NUMBER DEFAULT 10 )
IS  -- Declaracion de variables locales
BEGIN
  -- Sentencias
  UPDATE SALDOS_CUENTAS 
 SET SALDO = new_saldo, 
            FX_ACTUALIZACION = SYSDATE
  WHERE CO_CUENTA = cuenta;

END Actualiza_Saldo; 

    Una vez creado y compilado el procedimiento almacenado podemos ejecutarlo. Si el sistema nos indica que el procedimiento se ha creado con errores de compilación podemos ver estos errores de compilacion con la orden SHOW ERRORS en SQL *Plus.

    Existen dos formas de pasar argumentos a un procedimiento almacenado a la hora de ejecutarlo (en realidad es válido para cualquier subprograma). Estas son:

  • Notación posicional: Se pasan los valores de los parámetros en el mismo orden en que el procedure los define.

BEGIN Actualiza_Saldo(200501,2500);
        COMMIT;

END; 
  • Notación nominal:Se pasan los valores en cualquier orden nombrando explicitamente el parámetro.

BEGIN Actualiza_Saldo(cuenta => 200501,new_saldo  => 2500);
  COMMIT;

END; 

No hay comentarios:

Publicar un comentario