Atualizar estrutura base dados automaticamente
Preciso implementar na minha aplicação uma função que verifica a versão do Banco de Dados e se a versão for antiga executar script para fazer a atualização do banco.
Pensei em criar uma entidade onde armazeno a versão atual do banco de dados e toda vez que o sistema for executado ele compara esta versão, se estiver defasada a aplicação roda essa rotina que cria os determinados campos para as diferentes tabelas atraves de scripts e ao final gravo o numero da versão atual na entidade parâmetros. Com isso não preciso ficar manipulando base de dados, o próprio sistema é quem faz isso para mim de forma automática.
Alguem teria alguma rotina pronta ou que poderia me ajudar a implementar.
Utilizo firebird 2.1 e delphi 7.
Aguardo contato
Pensei em criar uma entidade onde armazeno a versão atual do banco de dados e toda vez que o sistema for executado ele compara esta versão, se estiver defasada a aplicação roda essa rotina que cria os determinados campos para as diferentes tabelas atraves de scripts e ao final gravo o numero da versão atual na entidade parâmetros. Com isso não preciso ficar manipulando base de dados, o próprio sistema é quem faz isso para mim de forma automática.
Alguem teria alguma rotina pronta ou que poderia me ajudar a implementar.
Utilizo firebird 2.1 e delphi 7.
Aguardo contato
Iramar Junior
Curtidas 0
Respostas
William
05/06/2012
Colega algum tempo atrás iniciei um projeto com esse objetivo de autalização da estrutura do banco no cliente, sempre q fosse atualizado ou criado procedures, triggers, campos, chaves, índices, tabelas, domínios etc., mas acabei desistindo temporariamente da idéia, como vc pode notar seriam várias verificações até chegar ao resultado final, problemas com outros estações acessando o BD isso sem contar esse controle de versões que vc mencionou.
Mas prentendo em breve continuar com o projeto, até porque durante a fase de pesquisas encontrei um material parecido mas para o MySQL, dentro da comunidade Firebird existe essa necessidade de atualização automática da estrutura do BD, mas ainda não encontramos uma solução.
Mas prentendo em breve continuar com o projeto, até porque durante a fase de pesquisas encontrei um material parecido mas para o MySQL, dentro da comunidade Firebird existe essa necessidade de atualização automática da estrutura do BD, mas ainda não encontramos uma solução.
GOSTEI 0
Anderson Ferreira
05/06/2012
vc poderia me passar esse material do MySQL?
GOSTEI 0
Rafael Cunha
05/06/2012
Eu tenho algo parecido com o que vocês descreveram utilizando DbExpress.
GOSTEI 0
Anderson Ferreira
05/06/2012
Poderia deixar algum exemplo?
GOSTEI 0