declare
    object_exists exception;
    pragma exception_init (object_exists , -00955);
begin
  execute immediate 'CREATE TABLE CAIXA_CONTRATO (
					    CAIXACONTRATO_ID NUMBER(7,0) PRIMARY KEY,
					    CONTRATO_ID NUMBER(7,0),
					    DATA_LANCAMENTO DATE,
					    VALOR NUMBER(15,2),
					    CAJA_ID NUMBER(7,0),
					    EVENTOEXTRA_ID NUMBER(7,0),
					    USUARIO_ID NUMBER(7,0),
					    TIPO_LANCAMENTO_ID NUMBER(7,0),
					    ACTIVO NUMBER(1,0),
					    FECMODIF DATE,
					    CONSTRAINT fk_contrato_caixa_contrato FOREIGN KEY (CONTRATO_ID) REFERENCES CONTRATO_CORPORATIVO(CONTRATO_ID),
					    CONSTRAINT fk_caja_caixa_contrato FOREIGN KEY (CAJA_ID) REFERENCES CAJA(CAJA_ID),
					    CONSTRAINT fk_eventoextra_caixa_contrato FOREIGN KEY (EVENTOEXTRA_ID) REFERENCES EVENTO_EXTRA(EVENTOEXTRA_ID),
					    CONSTRAINT fk_usuario_caixa_contrato FOREIGN KEY (USUARIO_ID) REFERENCES USUARIO(USUARIO_ID),
					    CONSTRAINT fk_tipo_lancamento_caixa_contrato FOREIGN KEY (TIPO_LANCAMENTO_ID) REFERENCES TIPO_LANCAMENTO_CAIXA(TIPO_LANCAMENTO_ID)
					)';
  exception when object_exists then null;
end;
/
declare
    object_exists exception;
    pragma exception_init (object_exists , -00955);
begin
  execute immediate 'CREATE SEQUENCE "CAIXA_CONTRATO_SEQ" MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE';
  exception when object_exists then null;
end;
/
