Fórum Como manter a estrutura do banco de dados atualizada? #522692

12/06/2015

0

Boa tarde pessoal, estou utilizando Delphi XE7, FireDac e postgres,
Desenvolvi toda a a plicação, agora estou nos "finalmentes" e preciso bolar alguma forma de atualizar a estrutura do banco de dados conforme vou a atualizando e lançando atualizações para o sistema.
Alguém tem uma ideia de como posso fazer isso?
Fundeste Sc

Fundeste Sc

Responder

Post mais votado

16/06/2015

Aqui na empresa desenvolvi um sistema que faz a atualização da base de dados automaticamente, porém pra MySql, ele analisa a base que vc desejas (e que vc considera a certa), e então cria uma especie de backup.
Ai no cliente executo o programa passando como parametro o backup feito, ele analisa as diferenças do backup pra base de dados instalada e cria e exeuta um script pra atualização da base.

Atualmente ele faz a verificação de inclusão e/ou exclusão de tabelas, inclusão/exclusão de fields, alteração do type de um field inclusive se é chave primaria, not null, unique, etc.
Views, Procedures e Trigger tbm apesar de não ser muito essencial já que é só excluir e restaurar do backup.

Pelo que me lembre uma das coisas que esta faltando no sistema é fazer a consistência das chaves estrangeiras. E tbm tem o problema de que se uma tabela ou coluna é renomeada ele não entende assim, para o sistema, a coluna/tabela foi excluida e criada uma nova(podendo ocasionar perda de informação na base do cliente, por isso o sistema sempre faz um backup completo antes de efetuar essa analise).

Mas pro básico tem nos ajudado bastante.

Att.Cauê Nishijima

Cauê Nishijima

Cauê Nishijima
Responder

Gostei + 1

Mais Posts

15/06/2015

Marisiana Battistella

Seriam as definições das operações CRUD?

Neste curso tem algumas videoaulas que abordam isso: Curso Completo de Delphi com FireDac
Responder

Gostei + 0

15/06/2015

Cauê Nishijima

Você quer um sistema que mantenha a estrutura da base de dados nos cliente atualizada, conforme você for liberando novas atualizações, porque novas funcionalidades no sistema geralmente são acompanhadas de novas tabelas, ou alterações das já existe, ou até criação de procedures, views e triggers. Correto?

É isso que você quer?
Responder

Gostei + 0

16/06/2015

Jothaz

Você quer um sistema que mantenha a estrutura da base de dados nos cliente atualizada, conforme você for liberando novas atualizações, porque novas funcionalidades no sistema geralmente são acompanhadas de novas tabelas, ou alterações das já existe, ou até criação de procedures, views e triggers. Correto?

É isso que você quer?


Cauê Nishijima acho que é isto que ele quer, então tem para onde correr.

Você tem de conhecer bastante de SQL para criar os scripts com as alterações e atualizações do bd.
E sempre que mudar a versão da aplicação enviar os cripts que deve ser rodados e assim manter o bd atualizado.

Então se você algum software para manipular seu bd através de arrastar e solta ou wizard vai ter que saber como fazer o mesmo via scritp do SQL.
Responder

Gostei + 0

19/06/2015

Dorivan Sousa

procura por Database Comparer, tem opções para utilizar na sua aplicação (VCL) ou tem a opção de utilizar o aplicativo deles Database Comparar Stand Alone
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar