9 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			9 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| TYPE=TRIGGERS
 | |
| triggers='CREATE DEFINER=`root`@`localhost` TRIGGER trg_rfa_items_bi_guard\nBEFORE INSERT ON rfa_items\nFOR EACH ROW\nBEGIN\n  DECLARE v_type_code VARCHAR(20);\n  DECLARE v_hdr_proj INT;\n  DECLARE v_doc_proj INT;\n\n  SELECT t.type_code, c.project_id\n    INTO v_type_code, v_hdr_proj\n  FROM correspondences c\n  JOIN correspondence_types t ON t.type_id = c.correspondence_type_id\n  WHERE c.corr_id = NEW.rfa_corr_id;\n\n  IF v_type_code IS NULL THEN\n    SIGNAL SQLSTATE \'45000\' SET MESSAGE_TEXT=\'RFA header not found\';\n  END IF;\n  IF v_type_code <> \'RFA\' THEN\n    SIGNAL SQLSTATE \'45000\' SET MESSAGE_TEXT=\'rfa_corr_id must be a correspondence of type RFA\';\n  END IF;\n\n  SELECT project_id INTO v_doc_proj FROM technicaldocs WHERE id = NEW.technical_doc_id;\n  IF v_doc_proj IS NULL THEN\n    SIGNAL SQLSTATE \'45000\' SET MESSAGE_TEXT=\'technical document not found\';\n  END IF;\n\n  IF v_hdr_proj <> v_doc_proj THEN\n    SIGNAL SQLSTATE \'45000\' SET MESSAGE_TEXT=\'RFA header and technicaldoc must be in the same project\';\n  END IF;\nEND' 'CREATE DEFINER=`root`@`localhost` TRIGGER trg_rfa_items_bu_guard\nBEFORE UPDATE ON rfa_items\nFOR EACH ROW\nBEGIN\n  SIGNAL SQLSTATE \'45000\' SET MESSAGE_TEXT=\'Update on rfa_items is not allowed; delete and re-insert\';\nEND'
 | |
| sql_modes=1411383296 1411383296
 | |
| definers='root@localhost' 'root@localhost'
 | |
| client_cs_names='utf8mb4' 'utf8mb4'
 | |
| connection_cl_names='utf8mb4_general_ci' 'utf8mb4_general_ci'
 | |
| db_cl_names='utf8mb4_general_ci' 'utf8mb4_general_ci'
 | |
| created=1757826194943474 1757826195038992
 |