Przeglądaj źródła

add trigger to update pytania stats after insert/delete pytania

Piotr Labudda 10 lat temu
rodzic
commit
1db2d8afe6
1 zmienionych plików z 25 dodań i 0 usunięć
  1. 25 0
      SE/superedit-DB_PROCEDURES_CREATE.php

+ 25 - 0
SE/superedit-DB_PROCEDURES_CREATE.php

@@ -999,6 +999,31 @@ $sql['view__CRM_LISTA_ZASOBOW_ALIASY_view']="CREATE or replace ALGORITHM=UNDEFIN
 
 $sql['event_shedule_init']="SET GLOBAL event_scheduler = ON";
 
+$sql['drop__CRM_TESTY_PYTANIA__AFTER__INSERT'] = "DROP TRIGGER IF EXISTS  `_CRM_TESTY_PYTANIA__AFTER__INSERT`";
+$sql['create__CRM_TESTY_PYTANIA__AFTER__INSERT'] = "CREATE DEFINER=`root`@`localhost` TRIGGER `_CRM_TESTY_PYTANIA__AFTER__INSERT`
+	AFTER INSERT ON `CRM_TESTY_PYTANIA` FOR EACH ROW BEGIN
+		update `CRM_PROCES` as p
+			set p.`TEST_PYTANIE`=(
+				select count(1)
+				from `CRM_TESTY_PYTANIA` as pyt
+				where
+					pyt.`ID_PROCES`=p.ID
+			);
+END
+";
+$sql['drop__CRM_TESTY_PYTANIA__AFTER__DELETE'] = "DROP TRIGGER IF EXISTS  `_CRM_TESTY_PYTANIA__AFTER__DELETE`";
+$sql['create__CRM_TESTY_PYTANIA__AFTER__DELETE'] = "CREATE DEFINER=`root`@`localhost` TRIGGER `_CRM_TESTY_PYTANIA__AFTER__DELETE`
+	AFTER DELETE ON `CRM_TESTY_PYTANIA` FOR EACH ROW BEGIN
+		update `CRM_PROCES` as p
+			set p.`TEST_PYTANIE`=(
+				select count(1)
+				from `CRM_TESTY_PYTANIA` as pyt
+				where
+					pyt.`ID_PROCES`=p.ID
+			);
+END
+";
+
 
 foreach($sql as $ind=>$sql_) {
 	DEBUG_S(-3,'wykonuje zapytanie sql dla '.$ind,$sql_,__FILE__,__FUNCTION__,__LINE__);