[firebase-br] Versionamento de Banco - GitHub

Marcelo - MK Softwares marcelo em mksoftwares.com.br
Segunda Fevereiro 8 11:30:55 -03 2021


Sim Gladiston, antigamente nosso banco de dados tinha várias SPs, agora 
as regras de negóci ficam todas na aplicação, ou seja, o banco de dados 
só aquilo que é pra ele fazer... armazenar os dados. A única coisa que 
fica a critério do banco, são as chaves primárias. Até as cascades das 
FKs, foram tiradas. Desse modo podemos ter um controle melhor dentro da 
aplicação os mátodos de exclusão e possiveis erros durante a exclusão.
Com C# é muito fácil criar backends. Já temos vários serviços rodando, 
os quais agilizam os processos, como por exemplo a busca de dados 
cadastrais de pessoas jurídicas, mas... para essas APIs quando 
precisamos armazenar dados, usamos os Postgres, devido a melhor 
compatibilidade com o C#. Não estou desmerecendo o nosso com e velho 
Firebird, já faz mais de 10 anos que ele paga as minhas contas, e vai 
continuar pagando ainda por muito tempo.

Abraço a todos

Em 08/02/2021 11:01, Gladiston Santana escreveu:
> Numa softhouse parece melhor ter certos objetos fora do banco, por 
> exemplo, as SPs.
> Por exemplo,transferir as SPs do banco para uma API de serviço, daí ao 
> inves de rodar a SP, disparar um http com parâmetros em json para o 
> endereço do servidor e o programa instalado escutar a requisição e 
> então executar e retornar o que se espera. Algo como 
> http://enderecodoservidor:10000/apis/crud_clientes 
> <http://enderecodoservidor:10000/apis/crud_clientes>. Estive estudando 
> C# e me parece facil fazer backends assim.
> A vantagem dessa transferencia é que sua mais tarde poderá trocar de 
> banco ou de linguagem e não teria de reescrever essas regras. Também 
> poderá escalar.
>
>
> Em qui., 4 de fev. de 2021 às 20:24, Marcelo - MK Softwares via lista 
> <lista em firebase.com.br <mailto:lista em firebase.com.br>> escreveu:
>
>     Se isso te ajuda: aqui também usamos scripts.
>     Desenvolvemos nosso primeiro sistema em VB6 e agora estamos migrando
>     para C#, e precisamos continuar o legado. Antes de iniciarmos o
>     processo
>     de migração, procuramos várias ferramentas, métodos, jeitos, até
>     acharmos essa "gambiarra", de rodar os scripts de alteração um a um
>     quando o atualizador do sistema é iniciado.
>     Bom, o C#, pra quem conhece, disponibiliza um complemento, o Entity
>     Framework, mas o EF ainda não esta pronto para o firebird. Tem vários
>     erros que acontecem sem explicação nenhuma. Em algumas consultas nas
>     issues no git do EF para firebird, tem vários relatos dos
>     problemas, e
>     promessas para arrumarem, estamos na expectativa. Se isso
>     acontecer ai
>     sim terei uma ferramente automatizada pelo software de retaguarda,
>     onde
>     sem intervenção do usuário, as atualizações acontecem como que por
>     mágica. O que mais me desanima, é que o PGSQL ja contempla esse
>     recurso
>     a tempos.
>
>     Agora se o nosso guro @Cantu, tiver alguma carta na manga. Também
>     tenho
>     interesse.
>
>     Abraços a todos e boa noite
>
>
>     Em 04/02/2021 15:26, Marcos R. Weimer via lista escreveu:
>     > Ola!
>     >
>     > Aqui tambem fazemos o script "inteligente" que cria os campos se não
>     > existir e tal, porém, temos procedures gigantescas.
>     >
>     > Digamos que queira comparar a procedure "quente" com uma
>     alterada por algum
>     > desenvolvedor? Este é o processo que queremos melhorar, está muito
>     > trabalhoso.
>     >
>     > Uma idéia seria ter a SQL de cada tabela, procedure e afins
>     versionada no
>     > github, o problema seria na hora que sair a versão de produção,
>     ter de
>     > passar todas estas SQLs montando o script da versão na mão.
>     >
>     > Hoje temos um processo que está funcionando bem (a mais de 10
>     anos), mas a
>     > idéia é facilitar e otimizar este processo.
>     >
>     >
>     > -=Ma®©oS=-
>     > Marcos R. Weimer
>     > Pessoas quietas têm as mentes mais barulhentas - Stephen Hawking
>     > Viver significa ter algumas alegrias e muito sofrimento - Pepe
>     Mujica
>     > Muitos daqueles que te chamam de louco queriam ter a sua coragem
>     - Silvio
>     > Santos
>     >
>     >
>     >
>     >
>     >
>     > Em qui., 4 de fev. de 2021 às 14:58, Gladiston Santana <
>     > gladiston em vidy.com.br <mailto:gladiston em vidy.com.br>> escreveu:
>     >
>     >> Olá Marcos,
>     >>
>     >> Há muito tempo eu tenho feito scripts gradativos que testam a
>     existencia
>     >> dos objetos e na falta deles os cria e segue uma certa ordem
>     domains,
>     >> tables, alter tables, indices, constraints,...., procedures,
>     triggers...
>     >> enfim entendeu né. Esses scripts rodam desde a inauguração na
>     base até
>     >> torná-la a versão vigente.
>     >>
>     >> Estes scripts voce pode versionar com git, mas recomendaria um
>     repositório
>     >> central com a opção 'bare' para que todos possam ter a mesma
>     versão de
>     >> referência.  Ter alguém que conheça bem o banco de dados e
>     possivelmente
>     >> centralizar as coisas nele pode ser muito bom porque dá medo de
>     pessoas mal
>     >> disciplinadas subirem 'lixo' não testado para este repositório
>     de onde
>     >> outros sincronizarão.
>     >>
>     >> Aqui eu criei um programa de atualização que vai aplicando
>     estes scripts
>     >> do zero até o fim, se nenhum falhar então a tá pronto para ser
>     enviado e
>     >> compartilhado.
>     >> Quando tenho que atualizar a produção segue o mesmo princípio,
>     rodo os
>     >> scripts na sequência desde o script que fez a fundação da base
>     até as
>     >> últimas atualizações. Apenas há um .exe que automatiza isso
>     para não
>     >> fazê-lo manualmente. Estes programas foram feitos com o Delphi,
>     mas estou
>     >> estudando fazê-los em node.js, o qual estou aprendendo, eu tô
>     perdendo
>     >> tempo em escrever UI para coisas banais que servem para
>     automatizar.
>     >>
>     >> Hoje tem ferramentas bem melhores que te ajudam a criar um
>     script com a
>     >> diferença do banco A para o banco B, mas pessoalmente acho que
>     se vc cuidar
>     >> disso internamente desde o inicio do desenvolvimento nunca
>     precisará de
>     >> ferramentas assim.
>     >>
>     >>
>     >> Em qui., 4 de fev. de 2021 às 10:05, Marcos R. Weimer via lista <
>     >> lista em firebase.com.br <mailto:lista em firebase.com.br>> escreveu:
>     >>
>     >>> Ola!
>     >>>
>     >>> A alguns anos estamos versionando o banco na mão (salvando
>     procedures,
>     >>> montando scripts...) mas temos um banco grande (muitas tabelas,
>     >>> procedures,
>     >>> triggers, views...)
>     >>>
>     >>> Então venho perguntar o que estão usando para
>     controlar/versionar o banco
>     >>> (procedures, triggers e afins), se alguem tiver alguma
>     ferramenta ou algo
>     >>> do tipo  integrado ao github seria excelente.
>     >>>
>     >>>
>     > ______________________________________________
>     > FireBase-BR (www.firebase.com.br <http://www.firebase.com.br>) -
>     Hospedado em www.locador.com.br <http://www.locador.com.br>
>     > Para saber como gerenciar/excluir seu cadastro na lista, use:
>     http://www.firebase.com.br/fb/artigo.php?id=1107
>     <http://www.firebase.com.br/fb/artigo.php?id=1107>
>     > Para consultar mensagens antigas:
>     http://www.firebase.com.br/pesquisa_lista.html
>     <http://www.firebase.com.br/pesquisa_lista.html>
>     ______________________________________________
>     FireBase-BR (www.firebase.com.br <http://www.firebase.com.br>) -
>     Hospedado em www.locador.com.br <http://www.locador.com.br>
>     Para saber como gerenciar/excluir seu cadastro na lista, use:
>     http://www.firebase.com.br/fb/artigo.php?id=1107
>     <http://www.firebase.com.br/fb/artigo.php?id=1107>
>     Para consultar mensagens antigas:
>     http://www.firebase.com.br/pesquisa_lista.html
>     <http://www.firebase.com.br/pesquisa_lista.html>
>
>
>
> -- 
> A Vidy possui um Sistema de Gestão da Qualidade estruturado e com 
> Certificação ISO 9001 há mais de 10 anos, mantendo seu foco na 
> Qualidade e na Melhoria Continua.
>
> Em março de2018 migramos com sucesso para a nova versão da ISO 9001.
>
> Somos a única Empresa Brasileira de Engenharia de Laboratórios com 
> certificação com o Escopo Completo; desde Projetos, Engenharia, 
> Construção, Fabricação e Instalação de Laboratórios.
>
> 	
>


Mais detalhes sobre a lista de discussão lista