Já deu uma olhadinha no Change Manager?
Veja o vídeo - Sincronizando bases de dados com Change Manager -
http://edn.embarcadero.com/br/article/39527
[]'s
Andreano Lanusse
Product Line Manager Lead Evangelist Latin America
Embarcadero Technologies
Blog: http://www.andreanolanusse.com
Twitter: http://twitter.com/andreanolanusse
-Original Message-
From: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] On
Behalf Of Paulo Aquino
Sent: Tuesday, May 25, 2010 8:13 AM
To: delphi-br@yahoogrupos.com.br
Subject: Re: RES: [delphi-br] Como vocês comparam o banco de dados oficial com
os dos seus clientes?
Bom dia!
Eu trabalho da seguinte forma:
1. Para cada alteração de DDL no banco de dados eu crio um script
2. Coloco o nome do script como número de versão do sistema, exemplo
1.7.72.0.
3. Altero a versão do executável para 1.7.72.0, combinando desda forma
com a última atualização.
4. Guardo no banco de dados em um registro o número da versão do sistema,
no último comando do arquivo de script, exemplo update empresa set nuversao
= '1.7.72.0'; commit work;
Desda forma tenho trabalhado tranquilamente mas ainda tenho um problema.
Criei um executor do script que pega cada comando sql e então executa no
banco de dados com o comando ExecuteDirect do sqlconnection. E quando ele
encontra uma situação como a debaixo
SET TERM ^ ;
ALTER TRIGGER pedido_before_delete
active before delete position 0
AS
BEGIN
DELETE FROM ITPEDIDO WHERE ITPEDIDO.CDPEDIDO = OLD.CDPEDIDO;
delete from aprovacao where aprovacao.cdpedido = old.cdpedido;
END
^
SET TERM ; ^
dá o seguinte erro:
Project Atualizador.exe raised exception class EDatabaseError with message
'Token unknown - line 1, char 5 TERM
Alguém poderia me ajudar?
Lembrando que um cliente pode ficar muito tempo sem atualizar o sistema e
então ter que rodar vários scripts.
Desde já agradeço.
Em 9 de março de 2010 11:08, Nazareno Neto nazareno.nobr...@gmail.comescreveu:
Se vc for direto no cliente, tu pode levar uma copia do banco mais atual e
usar um comparador de banco, tipo o DataBaseComparer, lembrando q este nao
eh free para uso comercial!
Em 9 de março de 2010 09:23, Dirlei dir...@gmail.com escreveu:
Eu resolvo esta questão versionando os databases. À cada alteração no
Database, incremento a versão e gero um script de upgrade, que é
executado automaticamente pelo sistema nos clientes quando libero uma
atualização de versão.
Há um email onde expliquei mais detalhadamente como faço isso, procure
pelo assunto Atualização de software.
Dirlei.
Felipe Lopes escreveu:
Gostaria muito de sugestões ao assunto relacionado
Alguém possui?
De: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br
mailto:delphi-br%40yahoogrupos.com.brdelphi-br%2540yahoogrupos.com.br
delphi-br%2540yahoogrupos.com.br
[mailto:delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br
mailto:delphi-br%40yahoogrupos.com.brdelphi-br%2540yahoogrupos.com.br
delphi-br%2540yahoogrupos.com.br]
Em
nome de Fellipe Henrique
Enviada em: terça-feira, 2 de março de 2010 11:41
Assunto: [delphi-br] Como vocês comparam o banco de dados oficial com
os dos
seus clientes?
Amigos, aqui nós usávamos o Clever Components DBComparer onde ele
comparava o script da versão oficial do sistema, com a que o cliente
tem, e
fazia as modificações necessárias... o problema é que este componente
está
parado desde 2006, ou seja, com o firebird novo, muita coisa está de
fora..
o que vez e outra, está trazendo problemas nas atualizações...
Então venho perguntar aos amigos.. como vocês realizam os updates dos
bancos
nos clientes? como controlam isso?
Att.
--
_
T.·.F.·.A.·.
Fellipe Henrique
--
Nazareno Neto
Desenvolvedor Delphi e Firebird
http://www.delphisistemas.com.br
nazarenon...@delphisistemas.com.br
nazareno.nobr...@gmail.com
[As partes desta mensagem que não continham texto foram removidas]
--
FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM
[As partes desta mensagem que não continham texto foram removidas]
--
FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM
CONFIDENTIALITY NOTICE: This email message is for the sole use of the intended
recipient(s) and may contain confidential and privileged information. Any
unauthorized review, use, disclosure or distribution is prohibited. If you are
not the intended recipient, please contact the sender by reply email and
destroy all copies of the original message.