MySQL 5 Delphi7 Zeos Não atualiza o Banco de Dados
Caros amigos, estou com um problema que creio eu não ser de dificil solução.
Acontece que precisei acessar uma base de dados em MySQL 5 e optei por usar os componentes da Zeos.lib
Bom até ai tudo bem, Coloquei os seguintes componentes no form: TZMySqlDataBase, TZMySqlTransact, TZMySqlQuery, TZUpdateSql, TDataSource, DBGrid e um DBNavigator.
Configurei a conexão e os dados aparecem na grid só q não consigo alterar nada nem incluir nem excluir.
Já Verifiquei a propriedade ReadOnly de todos os componentes e estão como False.
Quando acesso a base pela ferramenta de administração do My-SQL ele executa todos os comandos sem problemas, insere, altera e deleta.
Por favor se alguem puder me ajudar agradeço.
Conto com a costumeira colaboração dos colegas.
Tadeu.
Acontece que precisei acessar uma base de dados em MySQL 5 e optei por usar os componentes da Zeos.lib
Bom até ai tudo bem, Coloquei os seguintes componentes no form: TZMySqlDataBase, TZMySqlTransact, TZMySqlQuery, TZUpdateSql, TDataSource, DBGrid e um DBNavigator.
Configurei a conexão e os dados aparecem na grid só q não consigo alterar nada nem incluir nem excluir.
Já Verifiquei a propriedade ReadOnly de todos os componentes e estão como False.
Quando acesso a base pela ferramenta de administração do My-SQL ele executa todos os comandos sem problemas, insere, altera e deleta.
Por favor se alguem puder me ajudar agradeço.
Conto com a costumeira colaboração dos colegas.
Tadeu.
N_informatica
Curtidas 0
Respostas
Marcosrocha
17/08/2007
Tadeu eu trabalho com Zeos mas tem um outro compontente rolando por aí que dizerm ser melhor. Não me lembro o nome, assim que lembrar eu posto OK?
Quanto ao problema, como eu trabalho direto com SQL na ´Mão´ meu único problema foi a configuração para não commitar automático no MySQL... Confesso que esse banco de dados devia ficar apenas na WEB... :lol:
Mas quando você dá um Post e Commita no Grid, isto deveria alterar seu banco de dados MySQL sim... talves haja ainda alguma outra propriedade para mexer que você ainda não viu (e com certeza não vou saber dizer :p). Mas só a título de curiosidade, Eu utilizo apenas DataBase, Transaction e Query...
Quanto ao problema, como eu trabalho direto com SQL na ´Mão´ meu único problema foi a configuração para não commitar automático no MySQL... Confesso que esse banco de dados devia ficar apenas na WEB... :lol:
Mas quando você dá um Post e Commita no Grid, isto deveria alterar seu banco de dados MySQL sim... talves haja ainda alguma outra propriedade para mexer que você ainda não viu (e com certeza não vou saber dizer :p). Mas só a título de curiosidade, Eu utilizo apenas DataBase, Transaction e Query...
GOSTEI 0
Fabiano Góes
17/08/2007
Caros amigos, estou com um problema que creio eu não ser de dificil solução.
Acontece que precisei acessar uma base de dados em MySQL 5 e optei por usar os componentes da Zeos.lib
Bom até ai tudo bem, Coloquei os seguintes componentes no form: TZMySqlDataBase, TZMySqlTransact, TZMySqlQuery, TZUpdateSql, TDataSource, DBGrid e um DBNavigator.
Configurei a conexão e os dados aparecem na grid só q não consigo alterar nada nem incluir nem excluir.
Já Verifiquei a propriedade ReadOnly de todos os componentes e estão como False.
Quando acesso a base pela ferramenta de administração do My-SQL ele executa todos os comandos sem problemas, insere, altera e deleta.
Por favor se alguem puder me ajudar agradeço.
Conto com a costumeira colaboração dos colegas.
Tadeu.
altere as propriedades do objeto ZConnection para:
TransactIsolationLevel = [b:f5c78d69e4]tiReadCommitted[/b:f5c78d69e4]
ReadOnly = [b:f5c78d69e4]False[/b:f5c78d69e4]
altere as propriedades do Objeto ZQuery para:
RequestLive = [b:f5c78d69e4]True[/b:f5c78d69e4]
UpdateMode = [b:f5c78d69e4]umUpdateAll[/b:f5c78d69e4]
acho que isso pode resolver seu problema.
abraço !!!
GOSTEI 0
Fabiano Góes
17/08/2007
complementando:
após executar: ZQuery.Post;
sempre execute: ZQuery.ApplyUpdates;
apenas após o applyupdates os dados são enviados ao banco.
após executar: ZQuery.Post;
sempre execute: ZQuery.ApplyUpdates;
apenas após o applyupdates os dados são enviados ao banco.
GOSTEI 0
Marcosrocha
17/08/2007
[quote:fbc4487488=´Fabiano Góes´]complementando:
após executar: ZQuery.Post;
sempre execute: ZQuery.ApplyUpdates;
apenas após o applyupdates os dados são enviados ao banco.[/quote:fbc4487488]
Corretíssimo, Fabiano.
após executar: ZQuery.Post;
sempre execute: ZQuery.ApplyUpdates;
apenas após o applyupdates os dados são enviados ao banco.[/quote:fbc4487488]
Corretíssimo, Fabiano.
GOSTEI 0
Sma
17/08/2007
Boa Noite....
Estou usando o Mysql 4.0.24 com o componente Zeos que tem o protocolo apenas até a versão 4.0. Poderiam me informar onde encontro a nova versão do Zeos que trabalha com o MySQL 5.0.
Obrigado
Sandro Ávila
Estou usando o Mysql 4.0.24 com o componente Zeos que tem o protocolo apenas até a versão 4.0. Poderiam me informar onde encontro a nova versão do Zeos que trabalha com o MySQL 5.0.
Obrigado
Sandro Ávila
GOSTEI 0
Fabiano Góes
17/08/2007
Boa Noite....
Estou usando o Mysql 4.0.24 com o componente Zeos que tem o protocolo apenas até a versão 4.0. Poderiam me informar onde encontro a nova versão do Zeos que trabalha com o MySQL 5.0.
Obrigado
Sandro Ávila
Download da biblioteca ZeosLib:
[url]http://sourceforge.net/project/showfiles.php?group_id=35994[/url]
a versão que estou usando da zeos não tem o protocolo para o MYSQL5 mais o protocolo MYSQL4.1 está funcionando certinho com o MYSQL5, pelo menos até agora não apresentou nenhum problema.
GOSTEI 0
Marcosrocha
17/08/2007
Sandro, o MySQLDrivers é melhor que o Zeos, não é OpenSource mas é show de bola. Vem apenas com os DCU´s e a BPL. Para instalar basta apenas ir em Components > Install Packages e adicionar a BPL do componente.
GOSTEI 0
Carlos Jatai
17/08/2007
amigos bom dia.
o problema que estou batendo cabeça é parecido com esse tópico.
Acontece que quando rodo o aplicativo não aparecem os dados da tabela e nem permite que eu digite nada ... o que me parece é que não cria a ligação do dbedit com o campo da tabela.
estou usando D7+MySQL+ZEOS 6.6.0 .... agradeço se alguém puder me ajudar.
Ah, já tentei as alterações propostas. Não funcionou.
o problema que estou batendo cabeça é parecido com esse tópico.
Acontece que quando rodo o aplicativo não aparecem os dados da tabela e nem permite que eu digite nada ... o que me parece é que não cria a ligação do dbedit com o campo da tabela.
estou usando D7+MySQL+ZEOS 6.6.0 .... agradeço se alguém puder me ajudar.
Ah, já tentei as alterações propostas. Não funcionou.
GOSTEI 0
Daykas
17/08/2007
Olhe o Request live na propriedade do seu TQuery.
Se for o Zeos 6, verifique se não está utilizando o componente somente leitura.
Delphi + MySQL + Zeos é perfeito.
Carlos
Se for o Zeos 6, verifique se não está utilizando o componente somente leitura.
Delphi + MySQL + Zeos é perfeito.
Carlos
GOSTEI 0
Marcosrocha
17/08/2007
Delphi + MySQL + Zeos é perfeito.
Perfeito, perfeeeeeito não acho não... Mas que é bom e resolve, resolve! :wink:
GOSTEI 0
Carlos Jatai
17/08/2007
Amigos, já resolvemos o problema. Desinstalei o MySQL 5, e desinstalei o ZEOS, inclusive apaguei os programas que ficam na pasta do delphi. Instalei o MySQL 6 e o ZEOS 6, dai funcionou beleza. Obrigado
GOSTEI 0