Oracle PL /SQL es un lenguaje procedimental que es una extensin de SQL , o el lenguaje de
consulta estructurado. Utilice el PL /SQL para obtener los resultados deseados cuando el DML estndar o de manipulacin de datos Lengua o sentencias de seleccin no se puede. Los procedimientos , funciones , disparadores y paquetes de cuatro tipos distintos de objetos almacenados o programas almacenados , escritas en PL /SQL. Usted debe entender el concepto de la creacin y el mantenimiento de los objetos almacenados PL /SQL para optimizar el rendimiento y el tiempo de programacin . En este artculo, el foco est en un procedimiento y una funcin . Instrucciones 1 Conectar a Oracle SQL * Plus haciendo clic en " Inicio", " Todos los programas " y " SQLPlus . " 2 Introduzca su nombre de usuario y contrasea, luego haga clic en "OK ". en el cuadro de dilogo * Plus de Oracle SQL . 3 Crear un procedimiento. Un procedimiento se compila y se almacena en el diccionario de datos de una vez . Almacenar slo una copia del procedimiento cumplido reduce el trfico de red cuando ms de un usuario tiene que llamar. En el indicador de SQL , introduzca el cdigo. SQL > "CREATE OR REPLACE update_product_price PROCEDIMIENTO ( p_product_id EN products.product_id % TYPE , p_factor eN nMERO ) AS v_product_count INTEGER ; COMENZAR - contar el nmero de productos con la etiqueta < br > - suministrado product_id ) SELECT COUNT ( * ) EN v_product_count DE SU DONDE product_id = p_product_id ; - si el producto existe ( v_product_count = 1 ), entonces - Actualizacin ese precio de producto IF v_product_count = 1 productos aCTUALIZACIN lUEGO
< p> precio SET = precio * p_factor DONDE product_id = p_product_id ; COMMIT ; END IF; EXCEPCIN CUANDO OTROS ENTONCES ROLLBACK ; FIN update_product_price ; /" Despus del procedimiento se compila , se mostrar " Procedimiento creado " < . p> Nota : Para ejecutar con xito y llame a este procedimiento, una tabla de productos debe existir en la base de datos Oracle con los datos almacenados Utilizando el comando "SELECT " y "dnde " de comandos para consultar el precio del producto # 1 . por lo que se puede hacer una comparacin despus de la llamada al procedimiento. En el indicador de SQL , introduzca el cdigo SQL > "SELECT product_id , product_type_id , nombre, descripcin , precio desde productos DONDE product_id = 1 ; " . < Br > los resultados mostrarn la totalidad del expediente , pero aparece a continuacin es slo la columna de precios para el producto que se etiqueta como product_id = 1 . pRECIO ------- - Opiniones 19.95 Llame al update_product_price procedimiento. En el indicador de SQL , introduzca el cdigo SQL >
"CALL update_product_price ( 1 , 1,5 ) ; " . . Llamada completada El resultado muestra que la llamada realizada y el precio de produt_id se actualiza cuando se utiliza el SELECT y WHERE comandos en el indicador SQL SQL > Seleccione el precio de los productos de DONDE product_id = 1 , . pRECIO < br > ---------- 29.93 4 Crear una funcin. Cuando se llama a una funcin de una declaracin, que debe devolver un valor . Adems, para 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 cdigo. SQL > "CREATE OR REPLACE average_product_price FUNCIN ( p_product_type_id EN INTEGER ) NMERO DE VUELTA < br > AS NMERO v_average_product_price ; COMENZAR SELECT AVG ( precio) EN v_average_product_price DE SU < br > DONDE product_type_id = p_product_type_id ; v_average_product_price RETURN ; FIN average_product_price ; . /" Funcin creado el resultado muestra la funcin de creacin y luego la llamada a la average_product_price mediante la instruccin SELECT de la tabla dual. En el indicador de SQL , introduzca el cdigo SQL > "SELECT average_product_price ( 1 ) de la doble; " . AVERAGE_PRODUCT_PRICE ( 1 )