Skip to content

Instantly share code, notes, and snippets.

@rogeriolino
Last active January 2, 2016 00:49
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
Star You must be signed in to star a gist
Save rogeriolino/8225832 to your computer and use it in GitHub Desktop.
Novo SGA: Migração de banco versão 0.7.x para 1.0.0 (Postgres)
-- drop views
DROP VIEW view_historico_atend_codif;
DROP VIEW view_historico_atendimentos;
-- atend_codif
ALTER TABLE atend_codif RENAME id_atend TO atendimento_id;
ALTER TABLE atend_codif RENAME id_serv TO servico_id;
DROP TABLE atend_status CASCADE;
-- atendimentos
ALTER TABLE atendimentos RENAME id_atend TO id;
ALTER TABLE atendimentos RENAME id_uni TO unidade_id;
ALTER TABLE atendimentos RENAME id_usu TO usuario_id;
ALTER TABLE atendimentos RENAME id_usu_tri TO usuario_tri_id;
ALTER TABLE atendimentos RENAME id_pri TO prioridade_id;
ALTER TABLE atendimentos RENAME id_serv TO servico_id;
ALTER TABLE atendimentos RENAME id_stat TO status;
ALTER TABLE atendimentos RENAME num_guiche TO num_local;
ALTER TABLE atendimentos ADD COLUMN atendimento_id bigint;
ALTER TABLe atendimentos ALTER dt_cheg TYPE TIMESTAMP(0) WITHOUT TIME ZONE;
ALTER TABLe atendimentos ALTER dt_cha TYPE TIMESTAMP(0) WITHOUT TIME ZONE;
ALTER TABLe atendimentos ALTER dt_ini TYPE TIMESTAMP(0) WITHOUT TIME ZONE;
ALTER TABLe atendimentos ALTER dt_fim TYPE TIMESTAMP(0) WITHOUT TIME ZONE;
ALTER SEQUENCE atendimentos_id_atend_seq RENAME TO atendimentos_id_seq;
-- cargos
ALTER TABLE cargos_aninhados RENAME id_cargo TO id;
ALTER TABLE cargos_aninhados RENAME nm_cargo TO nome;
ALTER TABLE cargos_aninhados RENAME desc_cargo TO descricao;
ALTER TABLE cargos_aninhados ADD COLUMN nivel integer NULL;
ALTER TABLE cargos_aninhados RENAME TO cargos;
ALTER SEQUENCE cargos_aninhados_id_cargo_seq RENAME TO cargos_id_seq;
ALTER TABLE cargos_mod_perm RENAME id_cargo TO cargo_id;
ALTER TABLE cargos_mod_perm RENAME id_mod TO modulo_id;
-- grupos
ALTER TABLE grupos_aninhados RENAME id_grupo TO id;
ALTER TABLE grupos_aninhados RENAME nm_grupo TO nome;
ALTER TABLE grupos_aninhados RENAME desc_grupo TO descricao;
ALTER TABLE grupos_aninhados ADD COLUMN nivel integer NULL;
ALTER TABLE grupos_aninhados RENAME TO grupos;
ALTER SEQUENCE grupos_aninhados_id_grupo_seq RENAME TO grupos_id_seq;
-- historico
ALTER TABLE historico_atend_codif RENAME id_atend TO atendimento_id;
ALTER TABLE historico_atend_codif RENAME id_serv TO servico_id;
ALTER TABLE historico_atendimentos RENAME id_atend TO id;
ALTER TABLE historico_atendimentos RENAME id_uni TO unidade_id;
ALTER TABLE historico_atendimentos RENAME id_usu TO usuario_id;
ALTER TABLE historico_atendimentos RENAME id_usu_tri TO usuario_tri_id;
ALTER TABLE historico_atendimentos RENAME id_pri TO prioridade_id;
ALTER TABLE historico_atendimentos RENAME id_serv TO servico_id;
ALTER TABLE historico_atendimentos RENAME id_stat TO status;
ALTER TABLE historico_atendimentos RENAME num_guiche TO num_local;
ALTER TABLe historico_atendimentos ALTER dt_cheg TYPE TIMESTAMP(0) WITHOUT TIME ZONE;
ALTER TABLe historico_atendimentos ALTER dt_cha TYPE TIMESTAMP(0) WITHOUT TIME ZONE;
ALTER TABLe historico_atendimentos ALTER dt_ini TYPE TIMESTAMP(0) WITHOUT TIME ZONE;
ALTER TABLe historico_atendimentos ALTER dt_fim TYPE TIMESTAMP(0) WITHOUT TIME ZONE;
-- modulos
ALTER TABLE modulos RENAME id_mod TO id;
ALTER TABLE modulos RENAME chave_mod TO chave;
ALTER TABLE modulos RENAME nm_mod TO nome;
ALTER TABLE modulos RENAME desc_mod TO descricao;
ALTER TABLE modulos RENAME autor_mod TO autor;
ALTER TABLE modulos RENAME tipo_mod TO tipo;
ALTER TABLE modulos RENAME stat_mod TO status;
ALTER SEQUENCE modulos_id_mod_seq RENAME TO modulos_id_seq;
-- paineis
ALTER TABLE paineis RENAME id_uni TO unidade_id;
ALTER TABLE paineis_servicos RENAME id_uni TO unidade_id;
ALTER TABLE paineis_servicos RENAME id_serv TO servico_id;
ALTER TABLE painel_senha RENAME contador TO id;
ALTER TABLE painel_senha RENAME id_uni TO unidade_id;
ALTER TABLE painel_senha RENAME id_serv TO servico_id;
ALTER TABLE painel_senha RENAME nm_local TO local;
ALTER TABLE painel_senha RENAME num_guiche TO num_local;
ALTER TABLE painel_senha ADD COLUMN peso smallint NOT NULL DEFAULT 1;
-- prioridades
ALTER TABLE prioridades RENAME id_pri TO id;
ALTER TABLE prioridades RENAME nm_pri TO nome;
ALTER TABLE prioridades RENAME desc_pri TO descricao;
ALTER TABLE prioridades RENAME peso_pri TO peso;
ALTER TABLE prioridades RENAME stat_pri TO status;
ALTER SEQUENCE prioridades_id_pri_seq RENAME TO prioridades_id_seq;
-- locais
ALTER TABLE serv_local RENAME id_loc TO id;
ALTER TABLE serv_local RENAME nm_loc TO nome;
ALTER TABLE serv_local RENAME TO locais;
ALTER SEQUENCE serv_local_id_loc_seq RENAME TO serv_local_id_seq;
DROP TABLE serv_peso CASCADE;
-- servicos
ALTER TABLE servicos RENAME id_serv TO id;
ALTER TABLE servicos RENAME id_macro TO macro_id;
ALTER TABLE servicos RENAME desc_serv TO descricao;
ALTER TABLE servicos RENAME nm_serv TO nome;
ALTER TABLE servicos RENAME stat_serv TO status;
ALTER TABLE servicos ADD COLUMN peso smallint NOT NULL DEFAULT 1;
ALTER SEQUENCE servicos_id_serv_seq RENAME TO servicos_id_seq;
ALTER TABLE uni_serv RENAME id_uni TO unidade_id;
ALTER TABLE uni_serv RENAME id_serv TO servico_id;
ALTER TABLE uni_serv RENAME id_loc TO local_id;
ALTER TABLE uni_serv RENAME nm_serv TO nome;
ALTER TABLE uni_serv RENAME sigla_serv TO sigla;
ALTER TABLE uni_serv RENAME stat_serv TO status;
ALTER TABLE uni_serv ADD COLUMN peso smallint NOT NULL DEFAULT 1;
-- unidades
ALTER TABLE unidades RENAME id_uni TO id;
ALTER TABLE unidades RENAME id_grupo TO grupo_id;
ALTER TABLE unidades RENAME cod_uni TO codigo;
ALTER TABLE unidades RENAME nm_uni TO nome;
ALTER TABLE unidades RENAME stat_uni TO status;
ALTER SEQUENCE unidades_id_uni_seq RENAME TO unidades_id_seq;
-- usuarios
ALTER TABLE usu_grup_cargo RENAME id_usu TO usuario_id;
ALTER TABLE usu_grup_cargo RENAME id_grupo TO grupo_id;
ALTER TABLE usu_grup_cargo RENAME id_cargo TO cargo_id;
ALTER TABLE usu_serv RENAME id_uni TO unidade_id;
ALTER TABLE usu_serv RENAME id_serv TO servico_id;
ALTER TABLE usu_serv RENAME id_usu TO usuario_id;
ALTER TABLE usuarios RENAME id_usu TO id;
ALTER TABLE usuarios RENAME login_usu TO login;
ALTER TABLE usuarios RENAME nm_usu TO nome;
ALTER TABLE usuarios RENAME ult_nm_usu TO sobrenome;
ALTER TABLE usuarios RENAME senha_usu TO senha;
ALTER TABLE usuarios RENAME stat_usu TO status;
ALTER TABLE usuarios ALTER ult_acesso TYPE TIMESTAMP(0) WITHOUT TIME ZONE;
ALTER SEQUENCE usuarios_id_usu_seq RENAME TO usuarios_id_seq;
-- views
CREATE VIEW view_historico_atend_codif
AS
SELECT
atend_codif.atendimento_id,
atend_codif.servico_id,
atend_codif.valor_peso
FROM
atend_codif
UNION ALL
SELECT
historico_atend_codif.atendimento_id,
historico_atend_codif.servico_id,
historico_atend_codif.valor_peso
FROM
historico_atend_codif;
CREATE VIEW view_historico_atendimentos
AS
SELECT
atendimentos.id,
atendimentos.unidade_id,
atendimentos.usuario_id,
atendimentos.usuario_tri_id,
atendimentos.servico_id,
atendimentos.prioridade_id,
atendimentos.status,
atendimentos.sigla_senha,
atendimentos.num_senha,
atendimentos.num_senha_serv,
atendimentos.nm_cli,
atendimentos.num_local,
atendimentos.dt_cheg,
atendimentos.dt_cha,
atendimentos.dt_ini,
atendimentos.dt_fim,
atendimentos.ident_cli
FROM
atendimentos
UNION ALL
SELECT
historico_atendimentos.id,
historico_atendimentos.unidade_id,
historico_atendimentos.usuario_id,
historico_atendimentos.usuario_tri_id,
historico_atendimentos.servico_id,
historico_atendimentos.prioridade_id,
historico_atendimentos.status,
historico_atendimentos.sigla_senha,
historico_atendimentos.num_senha,
historico_atendimentos.num_senha_serv,
historico_atendimentos.nm_cli,
historico_atendimentos.num_local,
historico_atendimentos.dt_cheg,
historico_atendimentos.dt_cha,
historico_atendimentos.dt_ini,
historico_atendimentos.dt_fim,
historico_atendimentos.ident_cli
FROM
historico_atendimentos;
DELETE FROM config WHERE chave = 'version';
INSERT INTO config (chave, valor, tipo) VALUES ('version', '1.0.0', 1);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment