Como atualizar Banco nos Clientes ?
Imaginem que fiz um aplicativo em Java e o Banco é PostgreSQL.
Instalei a versão 1 nos clientes.
Quando fizer a versão 2 o Banco vai ter alterações ( campos novos, tabelas novas, etc...)
Qual a melhor maneira para atualizar o Banco dos clientes ? Tenho que fazer um programinha que faça as alterações
no Banco usando "ALTER TABLE ...", etc... ou há outra forma ?
Obrigado.
Carlos.
Instalei a versão 1 nos clientes.
Quando fizer a versão 2 o Banco vai ter alterações ( campos novos, tabelas novas, etc...)
Qual a melhor maneira para atualizar o Banco dos clientes ? Tenho que fazer um programinha que faça as alterações
no Banco usando "ALTER TABLE ...", etc... ou há outra forma ?
Obrigado.
Carlos.
Carlos Ferreira
Curtidas 0
Respostas
Elton Rosa
15/11/2010
Pra ser sincero ainda não fiz isso, mas tenhho uma lógica em mente...
Se você vai alterar o banco, com certeza seu executável também será.Acho que deve criar uma rotina na qual toda vez o sistema for aberto, ela verificará se existe algum arquivo de texto, seja .sql, .txt, etc no direitório do sistema.Caso haja, esse arquivo será carregado pelo componente de conexão, query ou de scripts sql e executado. Recomenda-se utilizar transação para essa operação.Se tudo ocorrer bem, a rotina irá excluir esse arquivo fisicamente no hd.
Então, inicialmente você deve atualizar o executável com essa rotina.
Isso é só uma idéia básica mesmo, além da implementação de atualização via web.
Espero que tenha esclarecido alguma coisa
Se você vai alterar o banco, com certeza seu executável também será.Acho que deve criar uma rotina na qual toda vez o sistema for aberto, ela verificará se existe algum arquivo de texto, seja .sql, .txt, etc no direitório do sistema.Caso haja, esse arquivo será carregado pelo componente de conexão, query ou de scripts sql e executado. Recomenda-se utilizar transação para essa operação.Se tudo ocorrer bem, a rotina irá excluir esse arquivo fisicamente no hd.
Então, inicialmente você deve atualizar o executável com essa rotina.
Isso é só uma idéia básica mesmo, além da implementação de atualização via web.
Espero que tenha esclarecido alguma coisa
GOSTEI 0