tsunamigue

Untitled

May 19th, 2014
228
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.24 KB | None | 0 0
  1. CREATE TRIGGER nombre BEFORE|AFTER INSERT|UPDATE|DELETE
  2. ON tabla FOR EACH ROW
  3. BEGIN sentencias END
  4.  
  5. --------------------------------------------------------------------
  6.  
  7.  
  8. CREATE EVENT nombre ON SCHEDULE schedule:
  9. AT timestamp [+ INTERVAL interval] ...
  10. | EVERY interval
  11. [STARTS timestamp [+ INTERVAL interval] ...]
  12. [ENDS timestamp [+ INTERVAL interval] ...]
  13. [ON COMPLETION [NOT] PRESERVE]
  14. DO event_body;
  15.  
  16. interval:
  17. quantity {YEAR | QUARTER | MONTH | DAY | HOUR | MINUTE |
  18. WEEK | SECOND | YEAR_MONTH | DAY_HOUR | DAY_MINUTE |
  19. DAY_SECOND | HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND}
  20.  
  21. EJ:
  22. CREATE EVENT myevent
  23. ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 HOUR
  24. DO
  25. UPDATE myschema.mytable SET mycol = mycol + 1;
  26.  
  27. SELECT @@global.event_scheduler; para ver si esta ON o OFF
  28. SET @@global.event_scheduler = 1; poner ON la variable.
  29.  
  30. -----------------------------------------------------
  31. CREATE TABLE nombretabla (
  32. col_name type [NOT NULL | NULL] [DEFAULT default_value]
  33. [AUTO_INCREMENT] | [PRIMARY] KEY]
  34. [COMMENT 'string'],
  35.  
  36.  
  37. PRIMARY KEY (index_col_name,...)
  38. FOREIGN KEY (index_col_name,...) [reference_definition]
  39. )
  40.  
  41. REFERENCES tbl_name [(index_col_name,...)]
  42. [MATCH FULL | MATCH PARTIAL | MATCH SIMPLE]
  43. [ON DELETE reference_option]
  44. [ON UPDATE reference_option]
  45.  
  46.  
  47. -----------------------------------------------------
  48.  
  49. DELIMITER $$
  50.  
  51. CREATE PROCEDURE build_email_list (INOUT email_list varchar(4000))
  52. BEGIN
  53.  
  54. DECLARE v_finished INTEGER DEFAULT 0;
  55. DECLARE v_email varchar(100) DEFAULT "";
  56.  
  57. -- declare cursor for employee email
  58. DEClARE email_cursor CURSOR FOR
  59. SELECT email FROM employees;
  60.  
  61. -- declare NOT FOUND handler
  62. DECLARE CONTINUE HANDLER
  63. FOR NOT FOUND SET v_finished = 1;
  64.  
  65. OPEN email_cursor;
  66.  
  67. get_email: LOOP
  68.  
  69. FETCH email_cursor INTO v_email;
  70.  
  71. IF v_finished = 1 THEN
  72. LEAVE get_email;
  73. END IF;
  74.  
  75. -- build email list
  76. SET email_list = CONCAT(v_email,";",email_list);
  77.  
  78. END LOOP get_email;
  79.  
  80. CLOSE email_cursor;
  81.  
  82. END$$
  83.  
  84. DELIMITER ;
Advertisement
Add Comment
Please, Sign In to add comment