Funciones y Triggers Postgres Fredy Hernan Sanchez Montaña
Funciones <ul><li>Ventajas: </li><ul><li>Minimiza tiempo en la conexion entre el cliente y el servidor
Balanceo de carga por parte del cliente </li></ul></ul>
PL/pgSQL <ul><li>Es un lenguaje procedural, y el mas usado en el motor de base de datos postgres, tiene una gran semejansa...
Estructura Basica <ul><li>[<<label>>]
[ DECLARE declaraciones ]
BEGIN </li><ul><li>sentencias
RETURN datoderetorno; </li></ul><li>END;
'LANGUAGE' 'plpgsql'; </li></ul>
Variables Y Constantes <ul><li>Todas las variables, filas y registros usados en un bloque o en alguno de sus sub-bloques d...
Ejemplos: </li><ul><li>IdUser INTEGER;
Cantidad NUMBER(5);
Upcoming SlideShare
Loading in …5
×

Basededatos

453 views
422 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
453
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
20
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Basededatos

  1. 1. Funciones y Triggers Postgres Fredy Hernan Sanchez Montaña
  2. 2. Funciones <ul><li>Ventajas: </li><ul><li>Minimiza tiempo en la conexion entre el cliente y el servidor
  3. 3. Balanceo de carga por parte del cliente </li></ul></ul>
  4. 4. PL/pgSQL <ul><li>Es un lenguaje procedural, y el mas usado en el motor de base de datos postgres, tiene una gran semejansa a PL/SQL de oracle </li></ul>
  5. 5. Estructura Basica <ul><li>[<<label>>]
  6. 6. [ DECLARE declaraciones ]
  7. 7. BEGIN </li><ul><li>sentencias
  8. 8. RETURN datoderetorno; </li></ul><li>END;
  9. 9. 'LANGUAGE' 'plpgsql'; </li></ul>
  10. 10. Variables Y Constantes <ul><li>Todas las variables, filas y registros usados en un bloque o en alguno de sus sub-bloques debe declararse en la seccion de declaraciones del bloque.
  11. 11. Ejemplos: </li><ul><li>IdUser INTEGER;
  12. 12. Cantidad NUMBER(5);
  13. 13. Url VARCHAR;
  14. 14. user_Id CONSTANT INTEGER :=10; </li></ul></ul>
  15. 15. Variables pasadas a las funciones Las variables pasadas a las funciones son denominadas por los identificadores $1,$2...$16 como maximo,
  16. 16. Crear Funciones <ul>CREATE FUNCTION iva_venta(REAL) RETURNS REAL AS ' <ul>DECLARE <ul>subtotal ALIAS FOR $1; </ul>BEGIN <ul>return subtotal * 1.15; </ul>END; </ul>' LANGUAGE 'plpgsql'; </ul>
  17. 17. %TYPE and %ROWTYPE <ul><li>user_id users.user_Id%TYPE;
  18. 18. user_rec users.%ROWTYPE; </li></ul>
  19. 19. Estructuras De Control De Flujo <ul><li>Condiciones
  20. 20. IF expression THEN
  21. 21. statements
  22. 22. [ELSE
  23. 23. statements]
  24. 24. END IF; </li></ul><ul>WHILE [<<label>>] WHILE expression LOOP statements END LOOP; </ul>
  25. 25. Estructuras De Control De Flujo <ul>[<<label>>] FOR name IN[ REVERSE ] express .. expression LOOP <li>statements
  26. 26. END LOOP; </li></ul><ul>[<<label>>] <li>FOR record | row IN select_clause LOOP
  27. 27. statements
  28. 28. END LOOP; </li></ul><ul>[<<label>>] FOR name IN[ REVERSE ] express .. expression LOOP <li>statements
  29. 29. END LOOP; </li></ul>
  30. 30. TRIGGERS Es una funcion que se realiza segun una condicion establecida al realizar una operacion en una base de datos
  31. 31. Estructura de un Triggers <ul>CREATE TRIGGER ‹trigger name> <BEFORE|AFTER› ‹INSERT|DELETE|UPDATE› ON ‹relation name> FOR EACH <ROW|STATEMENT› EXECUTE PROCEDURE <procedure name> (<function args>); </ul>

×