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; |