/*Добавляет ответственного к контрактам, если его не было*/ SET TERM ^ ; CREATE PROCEDURE CHECK_DUMMY_CONTRACT AS DECLARE VARIABLE CONTR INTEGER; DECLARE VARIABLE IDP INTEGER; begin for select CODE_CONTRACT from CONTRACTS where not exists (select * from PEOPLE where PEOPLE.CODE_CONTRACT=CONTRACTS.CODE_CONTRACT) into :CONTR do begin idp=GEN_ID(gen_people, 1); INSERT into PEOPLE(CODE_PEOPLE, CODE_CONTRACT, LAST_NAME, FIRST_NAME) values(:idp, :contr, '<Ответственное>', '<Лицо>'); end end^ SET TERM ; ^ COMMIT WORK; EXECUTE PROCEDURE CHECK_DUMMY_CONTRACT; DROP PROCEDURE CHECK_DUMMY_CONTRACT; COMMIT WORK;