Tecnología

Inicio

Tutorial Avanzado PL SQL

Tutorial Avanzado PL SQL


Oracle PL / SQL es un lenguaje de procedimientos que es una extensión de SQL o el lenguaje de consulta estructurado. Utilice el PL / SQL para obtener los resultados deseados cuando las sentencias DML la norma, o lenguaje de manipulación de datos o seleccionar no puede. Procedimientos, funciones, disparadores y paquetes de cuatro tipos distintos de objetos almacenados o programas almacenados, escrito en PL / SQL. Usted debe entender el concepto de la creación y el mantenimiento de las / los objetos almacenados SQL PL para optimizar el rendimiento y el tiempo de programación. En este artículo, la atención se centra en un procedimiento y una función.

Instrucciones

1 Conectarse a Oracle SQL * Plus haciendo clic en "Inicio", "Todos los programas" y "SQLPlus".

2 Introduzca su nombre de usuario y contraseña, a continuación, haga clic en "Aceptar". en el cuadro de diálogo de Oracle SQL * Plus.

3 Crear un procedimiento. Un procedimiento se compila y se almacena en el diccionario de datos una vez. Almacenar sólo una copia del procedimiento cumplido reduce el tráfico de red cuando más de un usuario tiene que llamar a él. En el indicador de SQL, introduzca el código.

SQL>

"CREAR O SUSTITUIR update_product_price PROCEDIMIENTO (

p_product_id EN products.product_id% TIPO,

p_factor EN NÚMERO

)

COMO

v_product_count INTEGER;

EMPEZAR

--count el número de productos con la

product_id --supplied)

SELECT COUNT (*)

EN v_product_count

a partir de productos

DONDE product_id = p_product_id;

-si existe el producto (v_product_count = 1), entonces

--update precio de ese producto

SI = 1 ENTONCES v_product_count

productos de la actualización

los precios Set = precio * p_factor

DONDE product_id = p_product_id;

COMETER;

TERMINARA SI;

EXCEPCIÓN

CUANDO OTROS ENTONCES

ROLLBACK;

update_product_price FIN;

/ "

Después de que el procedimiento se compila se mostrará "Procedimiento creado."

Nota: Para ejecutar y llamar a este procedimiento con éxito, una tabla de productos debe existir en la base de datos de Oracle con los datos almacenados.

El uso del comando "SELECT" y el comando "WHERE" para consultar el precio del producto # 1 por lo que se puede hacer una comparación después de la llamada al procedimiento. En el indicador de SQL, introduzca el código.

SQL>

"SELECT product_id, product_type_id, nombre, descripción, precio de los productos de

DONDE product_id = 1; "

Los resultados mostrará todo el registro, pero enumeran a continuación sólo la columna de precios para el producto que se etiqueta como product_id = 1.

PRECIO



19.95

Llame a la update_product_price procedimiento. En el indicador de SQL, introduzca el código.

SQL>

"Update_product_price CALL (1, 1,5);"

Llamada completada.

El resultado muestra que la llamada ha completado y el precio de produt_id se actualiza cuando se utiliza el SELECT y WHERE en la línea de comandos SQL.

SQL> SELECT precio de productos en los que product_id = 1;

PRECIO



29.93

4 Crear una función. Cuando se llama a una función de una declaración, que debe devolver un valor. Además, a las muchas funciones entregadas fuera de la caja con la base de datos Oracle 10g, los desarrolladores crear sus propias funciones para aumentar el impacto en el rendimiento. En el indicador de SQL, introduzca el código.

SQL>

"CREAR O SUSTITUIR average_product_price FUNCIÓN (

p_product_type_id EN INTEGER

) NÚMERO DE RETORNO

COMO

NÚMERO v_average_product_price;

EMPEZAR

SELECT AVG (precio)

EN v_average_product_price

a partir de productos

DONDE product_type_id = p_product_type_id;

VOLVER v_average_product_price;

average_product_price FIN;

/ "

Función creado.

El resultado muestra la función creada y luego la llamada a la average_product_price mediante la instrucción SELECT de la tabla dual. En el indicador de SQL, introduzca el código.

SQL>

"SELECT average_product_price (1)

De la doble; "

AVERAGE_PRODUCT_PRICE (1)



29.93