9 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			9 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| TYPE=TRIGGERS
 | |
| triggers='CREATE DEFINER=`root`@`localhost` TRIGGER trg_cor_bi_normalize\nBEFORE INSERT ON correspondences\nFOR EACH ROW\nBEGIN\n  SET NEW.correspondence_number = TRIM(NEW.correspondence_number);\n  SET NEW.title                  = TRIM(NEW.title);\n  SET NEW.keywords               = NULLIF(TRIM(NEW.keywords), \'\');\n  SET NEW.revision               = NULLIF(TRIM(NEW.revision), \'\');\n  SET NEW.is_internal_communication = IFNULL(NEW.is_internal_communication, 0);\n\n  IF NEW.project_id IS NULL OR NEW.correspondence_type_id IS NULL OR NEW.correspondence_status_id IS NULL THEN\n    SIGNAL SQLSTATE \'45000\' SET MESSAGE_TEXT=\'project_id/type_id/status_id is required\';\n  END IF;\n  IF NEW.correspondence_number IS NULL OR NEW.correspondence_number=\'\' THEN\n    SIGNAL SQLSTATE \'45000\' SET MESSAGE_TEXT=\'correspondence_number is required\';\n  END IF;\n\n  \nEND' 'CREATE DEFINER=`root`@`localhost` TRIGGER trg_cor_ai_set_root\nAFTER INSERT ON correspondences\nFOR EACH ROW\nBEGIN\n  IF NEW.root_id IS NULL THEN\n    UPDATE correspondences SET root_id = NEW.corr_id WHERE corr_id = NEW.corr_id;\n  END IF;\nEND' 'CREATE DEFINER=`root`@`localhost` TRIGGER trg_cor_bu_normalize\nBEFORE UPDATE ON correspondences\nFOR EACH ROW\nBEGIN\n  SET NEW.correspondence_number = TRIM(NEW.correspondence_number);\n  SET NEW.title                  = TRIM(NEW.title);\n  SET NEW.keywords               = NULLIF(TRIM(NEW.keywords), \'\');\n  SET NEW.revision               = NULLIF(TRIM(NEW.revision), \'\');\n  SET NEW.is_internal_communication = IFNULL(NEW.is_internal_communication, 0);\n\n  \n  IF NEW.root_id <> OLD.root_id THEN\n    SIGNAL SQLSTATE \'45000\' SET MESSAGE_TEXT=\'root_id is immutable\';\n  END IF;\nEND' 'CREATE DEFINER=`root`@`localhost` TRIGGER trg_cor_bd_no_delete_root_with_children\nBEFORE DELETE ON correspondences\nFOR EACH ROW\nBEGIN\n  IF EXISTS (SELECT 1 FROM correspondences WHERE root_id = OLD.corr_id AND corr_id <> OLD.corr_id) THEN\n    SIGNAL SQLSTATE \'45000\' SET MESSAGE_TEXT=\'Cannot delete root correspondence with existing revisions\';\n  END IF;\nEND'
 | |
| sql_modes=1411383296 1411383296 1411383296 1411383296
 | |
| definers='root@localhost' 'root@localhost' 'root@localhost' 'root@localhost'
 | |
| client_cs_names='utf8mb4' 'utf8mb4' 'utf8mb4' 'utf8mb4'
 | |
| connection_cl_names='utf8mb4_general_ci' 'utf8mb4_general_ci' 'utf8mb4_general_ci' 'utf8mb4_general_ci'
 | |
| db_cl_names='utf8mb4_general_ci' 'utf8mb4_general_ci' 'utf8mb4_general_ci' 'utf8mb4_general_ci'
 | |
| created=1759220375434299 1759220375781124 1759220375559604 1759220375957839
 |