Subversion Repositories Integrator Subversion

Rev

Rev 171 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
171 espaco 1
/*========tur===================================================*/
2
/* DBMS name:     PostgreSQL 8                                  */
3
/* Criado em:     23/04/2021                                        */
4
/* Autor: Bruno Lopes Peixoto                                       */
5
/*==============================================================*/
6
 
7
SET search_path = sc_sec;
8
 
9
/*==============================================================*/
10
/* Table: sec_papel                                             */
11
/*==============================================================*/
12
CREATE TABLE sec_papel (
13
   cod_papel            INT8                 NOT NULL,
14
   dsc_papel            VARCHAR(120)         NOT NULL,
15
   CONSTRAINT pk_papel PRIMARY KEY (cod_papel)
16
);
17
 
18
-- set table ownership
222 espaco 19
ALTER TABLE sec_papel owner TO espacoc_sc_sec
171 espaco 20
;
21
 
22
/*==============================================================*/
23
/* Table: sec_pessoa_papel                                      */
24
/*==============================================================*/
25
CREATE TABLE sec_pessoa_papel (
26
   seq_pessoa           INT8                 NOT NULL,
27
   cod_papel            INT8                 NOT NULL,
28
   CONSTRAINT pk_pessoapapel PRIMARY KEY (seq_pessoa, cod_papel)
29
);
30
 
31
-- set table ownership
222 espaco 32
ALTER TABLE sec_pessoa_papel owner TO espacoc_sc_sec
171 espaco 33
;
34
 
35
ALTER TABLE sec_pessoa_papel
36
   ADD CONSTRAINT fk_papel_pessoapapel FOREIGN KEY (cod_papel)
37
      REFERENCES sec_papel (cod_papel)
38
      ON DELETE RESTRICT ON UPDATE RESTRICT;
39
 
40
ALTER TABLE sec_pessoa_papel
41
   ADD CONSTRAINT fk_pessoa_pessoapapel FOREIGN KEY (seq_pessoa)
42
      REFERENCES sec_pessoa (seq_pessoa)
43
      ON DELETE RESTRICT ON UPDATE RESTRICT;
44
 
45
INSERT INTO sec_papel(cod_papel, dsc_papel) VALUES (1, 'CLIENTE');
46
INSERT INTO sec_papel(cod_papel, dsc_papel) VALUES (2, 'COLABORADOR');
47
INSERT INTO sec_papel(cod_papel, dsc_papel) VALUES (3, 'FORNECEDOR');
48
INSERT INTO sec_papel(cod_papel, dsc_papel) VALUES (4, 'TÉCNICO');
49
 
50
INSERT INTO sec_pessoa_papel(seq_pessoa, cod_papel) SELECT f.seq_pessoa, 2 FROM sec_funcionario f WHERE seq_pessoa = f.seq_pessoa;
51
INSERT INTO sec_pessoa_papel(seq_pessoa, cod_papel) SELECT f.seq_pessoa, 3 FROM sec_fornecedor f WHERE seq_pessoa = f.seq_pessoa;
52
 
53
ALTER TABLE sec_pessoa ADD COLUMN tip_pessoa CHAR(1) NULL
54
      CONSTRAINT ck_pessoa_tipo CHECK (tip_pessoa IS NULL OR (tip_pessoa IN ('F','J')));
55
comment ON COLUMN sec_pessoa.tip_pessoa IS
56
'Valores possíveis:
57
F - FÍSICA
58
J - JURÍDICA';
59
 
60
UPDATE sec_pessoa SET tip_pessoa = 'F';
61
 
62
ALTER TABLE sec_pessoa ADD COLUMN dsc_contato VARCHAR(120) NULL;
63
ALTER TABLE sec_pessoa ADD COLUMN ind_novidades BOOL NULL;
64
ALTER TABLE sec_pessoa ADD COLUMN ind_inscricao_estadual_isento BOOL NULL;
65
UPDATE sec_pessoa SET ind_inscricao_estadual_isento = FALSE;
66
ALTER TABLE sec_funcionario ADD COLUMN dsc_tamanho_fardamento VARCHAR(3) NULL;
67
 
68
ALTER TABLE sec_pessoa ADD COLUMN seq_modelo_cliente INT8 NULL;
69
ALTER TABLE sec_pessoa
70
   ADD CONSTRAINT fk_pessoa_modelo FOREIGN KEY (seq_modelo_cliente)
71
      REFERENCES sec_modelo (seq_modelo)
72
      ON DELETE RESTRICT ON UPDATE RESTRICT;
73
 
74
/* MIGRAR DADOS DE FUNCIONÁRIOS PARA TABELA DE FUNCIONÁRIO */
75
UPDATE sec_funcionario f SET dsc_tamanho_fardamento = (SELECT dsc_tamanho_fardamento FROM sec_pessoa p WHERE f.seq_pessoa = p.seq_pessoa);
76
ALTER TABLE sec_pessoa DROP COLUMN dsc_tamanho_fardamento;
77
 
78
/* MIGRAÇÃO DOS CLIENTES PARA PESSOA */
79
 
80
/*  */
81
 
82
SET search_path = public;