Subversion Repositories Integrator Subversion

Rev

Blame | Last modification | View Log | Download | RSS feed

/*========tur===================================================*/
/* DBMS name:     PostgreSQL 8                                  */
/* Criado em:     13/06/2016                                        */
/* Autor: Bruno Lopes Peixoto                                       */
/*==============================================================*/

SET search_path = sc_sec;

CREATE SEQUENCE sq_vigencia
INCREMENT 1
minvalue 1
maxvalue 99999999
START 1;

CREATE SEQUENCE sq_avaliacao
INCREMENT 1
minvalue 1
maxvalue 99999999
START 1;

CREATE SEQUENCE sq_itemaval
INCREMENT 1
minvalue 1
maxvalue 99999999
START 1;

ALTER TABLE sq_vigencia owner TO sc_sec;
ALTER TABLE sq_avaliacao owner TO sc_sec;
ALTER TABLE sq_itemaval owner TO sc_sec;
         
/*==============================================================*/
/* Table: sec_vigencia                                          */
/*==============================================================*/
CREATE TABLE sec_vigencia (
   seq_vigencia         INT8                 NOT NULL DEFAULT NEXTVAL('sc_sec.sq_vigencia'::regclass),
   dsc_vigencia         VARCHAR(10)          NOT NULL,
   dth_inicio           TIMESTAMP            NOT NULL,
   dth_fim              TIMESTAMP            NOT NULL,
   CONSTRAINT pk_vigencia PRIMARY KEY (seq_vigencia)
);

-- set table ownership
ALTER TABLE sec_vigencia owner TO sc_sec
;

/*==============================================================*/
/* Table: sec_avaliacao                                         */
/*==============================================================*/
CREATE TABLE sec_avaliacao (
   seq_avaliacao        INT8                 NOT NULL DEFAULT NEXTVAL('sc_sec.sq_avaliacao'::regclass),
   seq_vigencia         INT8                 NOT NULL,
   dth_inicio_resultado TIMESTAMP            NULL,
   dth_fim_resultado    TIMESTAMP            NULL,
   CONSTRAINT pk_avaliacao PRIMARY KEY (seq_avaliacao)
);

-- set table ownership
ALTER TABLE sec_avaliacao owner TO sc_sec
;
/*==============================================================*/
/* Index: ix_avalvigencia                                       */
/*==============================================================*/
CREATE  INDEX ix_avalvigencia ON sec_avaliacao (
seq_vigencia
);

ALTER TABLE sec_avaliacao
   ADD CONSTRAINT fk_avaliacao_vigencia FOREIGN KEY (seq_vigencia)
      REFERENCES sec_vigencia (seq_vigencia)
      ON DELETE RESTRICT ON UPDATE RESTRICT;

/*==============================================================*/
/* Table: sec_avaliacao_funcionario                             */
/*==============================================================*/
CREATE TABLE sec_avaliacao_funcionario (
   seq_funcionario      INT8                 NOT NULL,
   seq_avaliacao        INT8                 NOT NULL,
   ind_receber_bonificacao BOOL                 NULL,
   dsc_observacao       VARCHAR(400)         NULL,
   qtd_horas_extras_50   INT4                 NULL,
   qtd_horas_extras_100  INT4                 NULL,
   CONSTRAINT pk_avaliafunc PRIMARY KEY (seq_avaliacao, seq_funcionario)
);

-- set table ownership
ALTER TABLE sec_avaliacao_funcionario owner TO sc_sec
;
/*==============================================================*/
/* Index: ix_avalfunc_avaliacao                                 */
/*==============================================================*/
CREATE  INDEX ix_avalfunc_avaliacao ON sec_avaliacao_funcionario (
seq_avaliacao
);

/*==============================================================*/
/* Index: ix_avalfunc_funcionario                               */
/*==============================================================*/
CREATE  INDEX ix_avalfunc_funcionario ON sec_avaliacao_funcionario (
seq_funcionario
);

ALTER TABLE sec_avaliacao_funcionario
   ADD CONSTRAINT fk_avalfunc_avaliacao FOREIGN KEY (seq_avaliacao)
      REFERENCES sec_avaliacao (seq_avaliacao)
      ON DELETE RESTRICT ON UPDATE RESTRICT;

ALTER TABLE sec_avaliacao_funcionario
   ADD CONSTRAINT fk_avalfunc_funcionario FOREIGN KEY (seq_funcionario)
      REFERENCES sec_funcionario (seq_funcionario)
      ON DELETE RESTRICT ON UPDATE RESTRICT;

/*==============================================================*/
/* Table: sec_item_avaliacao                                    */
/*==============================================================*/
CREATE TABLE sec_item_avaliacao (
   seq_item_avaliacao   INT8                 NOT NULL DEFAULT NEXTVAL('sc_sec.sq_itemaval'::regclass),
   dsc_item_avaliacao   VARCHAR(400)         NOT NULL,
   ind_retira_pontos    BOOL                 NOT NULL,
   CONSTRAINT pk_itemaval PRIMARY KEY (seq_item_avaliacao)
);

-- set table ownership
ALTER TABLE sec_item_avaliacao owner TO sc_sec
;

/*==============================================================*/
/* Table: sec_avalfunc_itemaval                                 */
/*==============================================================*/
CREATE TABLE sec_avalfunc_itemaval (
   seq_item_avaliacao   INT8                 NOT NULL,
   seq_avaliacao        INT8                 NOT NULL,
   seq_funcionario      INT8                 NOT NULL,
   qtd_pontos           INT8                 NOT NULL,
   CONSTRAINT pk_avalfitemaval PRIMARY KEY (seq_avaliacao, seq_item_avaliacao, seq_funcionario)
);

-- set table ownership
ALTER TABLE sec_avalfunc_itemaval owner TO sc_sec
;
/*==============================================================*/
/* Index: ix_avalfitemaval_itemaval                             */
/*==============================================================*/
CREATE  INDEX ix_avalfitemaval_itemaval ON sec_avalfunc_itemaval (
seq_item_avaliacao
);

/*==============================================================*/
/* Index: ix_avalfitemaval_avalfunc                             */
/*==============================================================*/
CREATE  INDEX ix_avalfitemaval_avalfunc ON sec_avalfunc_itemaval (
seq_avaliacao,
seq_funcionario
);

ALTER TABLE sec_avalfunc_itemaval
   ADD CONSTRAINT fk_avalfitemaval_avalfunc FOREIGN KEY (seq_avaliacao, seq_funcionario)
      REFERENCES sec_avaliacao_funcionario (seq_avaliacao, seq_funcionario)
      ON DELETE RESTRICT ON UPDATE RESTRICT;

ALTER TABLE sec_avalfunc_itemaval
   ADD CONSTRAINT fk_avalfitemaval_itemaval FOREIGN KEY (seq_item_avaliacao)
      REFERENCES sec_item_avaliacao (seq_item_avaliacao)
      ON DELETE RESTRICT ON UPDATE RESTRICT;
         

SET search_path = public;