Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Alana Oliveira

ZUpdateSQL

Recommended Posts

Estou apanhando pra usar o Delphi com o MySQL, depois de ser nocauteada pelo dbExpress passei pro Zeos, mas estou diante de um problema: a falta de exemplos na net de como usar..

 

eu andei fuçando e quis usar o ZUPDATESQL pq vi que pode colocar todos os sqls ( InsertSQL, DeleteSQL e ModifySQL ), daí os problemas :

 

1 - Como passar os paramentros? (ZUpdateSQL1.Params.ParamValues['campo'] : = valorcampo ) ??

2 - Tenho que associar ele a um ZQuery?

3 - o q exatamente tenho q fazer? como executar o sql de cada um? (ZUpdateSQL1.InsertSQL.BeginUpdate;) ??

 

me ajudem!! please!!! se puderem me dá um exemplo eu agradeceria muito!!! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

boa tarde Alana....

 

muito bem:

1 -

{ ModifySQL = Update Usuario Set Usu_Nome = 'Teste' Where Usu_Cod = :P_Usu_Cod}procedure TForm1.ZQuery1BeforePost(DataSet: TDataSet);begin	 ZUpdateSQL1.Params.ParamByName('P_Usu_Cod').AsString	:= ZQuery1.FieldByName('Usu_Cod').AsString;end;

2- sim... na propriedade UpdateObject deve ser direcionado para o componente ZUpdateSQL.

 

3- não é necessário( pelo menos nunca utilizei dessa forma) inicializá-lo, apenas setando a propriedade UpdateObject do ZQuery, no momento do update ele considera o teu "ModifySQL"/"DeleteSQL" /"InsertSQL".

lembrando que se você adicionar o ZUpdateSQL, alterando a forma de delete/insert/update, automaticamente, nao faz, por exemplo o update "comum"( qro dizer q ele nao valida os campos para alterá-los e substitui pelo comando do ZUpdateSQL).

 

 

não sei se expliquei direito, mas somente utilizei 1 vez :D :P mas é +/- isso... qlqr coisa que precisa posta ai q alguem vai responde :D ^^

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo, parte das duvidas respondidas.. mas e depois? como eu faço pra executar o SQL pela Queryassim:1 - Digamos que eu tenha colocado os SQL no componente

ZUpdateSQL1.InsertSQL:= 'insert into madeira (nome, name, scientific) values (:madeira, :name, :scientific )';ZUpdateSQL1.DeleteSQL:= 'delete from madeira where codigo_madeira =:codigo'
2- Ligado ele ao ZQuery
ZQuery1.UpdateObject := ZUpdateSQL1;
3- Passado o Parametro
ZUpdateSQL1.Params.ParamByName('codigo').AsString : = txtcodigo.text;
4 - Como eu faço pra executar?? ZQuery1.ExecSQL ?? Como vou dizer qual quero executar? se é o InsertSQL ou o DeleteSQL??

boa tarde Alana....muito bem:1 -

{ ModifySQL = Update Usuario Set Usu_Nome = 'Teste' Where Usu_Cod = :P_Usu_Cod}procedure TForm1.ZQuery1BeforePost(DataSet: TDataSet);begin	 ZUpdateSQL1.Params.ParamByName('P_Usu_Cod').AsString	:= ZQuery1.FieldByName('Usu_Cod').AsString;end;
2- sim... na propriedade UpdateObject deve ser direcionado para o componente ZUpdateSQL.3- não é necessário( pelo menos nunca utilizei dessa forma) inicializá-lo, apenas setando a propriedade UpdateObject do ZQuery, no momento do update ele considera o teu "ModifySQL"/"DeleteSQL" /"InsertSQL".lembrando que se você adicionar o ZUpdateSQL, alterando a forma de delete/insert/update, automaticamente, nao faz, por exemplo o update "comum"( qro dizer q ele nao valida os campos para alterá-los e substitui pelo comando do ZUpdateSQL).não sei se expliquei direito, mas somente utilizei 1 vez :D :P mas é +/- isso... qlqr coisa que precisa posta ai q alguem vai responde :D ^^

Compartilhar este post


Link para o post
Compartilhar em outros sites

para executar o insert do ZUpdateSQL, faça insert no ZQuery... assim:- se tiver em um dbgrid, e clicar em insert, digitar os campos necessários, e ao executar o Post, ele busca o comando insert do ZUpdateSQL. Com isso o ZQuery nao insere, mas sim o ZUpdateSQL.ps.: esse procedimento que tu ta tentando fazer nao pode ser feito somente com o ZQuery??? ou alem de inserir no ZQuery tu tem q inserir em outro local?

Compartilhar este post


Link para o post
Compartilhar em outros sites

hum... Então esse ZUpdateSQL funciona como se fosse um trigger? como eu nao achei nenhum exemplo na net pensei que fosse alguma coisa do tipo :(

passado os paramentros ZUpdateSQL.InsertSQL.open  (ou ZUpdateSQL.InsertSQL.ExecSQL ) // e ele insereria logo no banco
http://forum.imasters.com.br/public/style_emoticons/default/upset.gif
ZUpdateSQL.DeleteSQL.open  (ou ZUpdateSQL.DeleteSQL.ExecSQL ) e ele deletaria logo no banco
http://forum.imasters.com.br/public/style_emoticons/default/upset.gif ou ainda
ZUpdateSQL.ModifySQL.open  (ou ZUpdateSQL.ModifySQL.ExecSQL )
http://forum.imasters.com.br/public/style_emoticons/default/cry.gif

para executar o insert do ZUpdateSQL, faça insert no ZQuery... assim:- se tiver em um dbgrid, e clicar em insert, digitar os campos necessários, e ao executar o Post, ele busca o comando insert do ZUpdateSQL. Com isso o ZQuery nao insere, mas sim o ZUpdateSQL.ps.: esse procedimento que tu ta tentando fazer nao pode ser feito somente com o ZQuery??? ou alem de inserir no ZQuery tu tem q inserir em outro local?

Compartilhar este post


Link para o post
Compartilhar em outros sites

hehe.. mas volto a lembrar que utilizei apenas uma vez... e utilizei da forma como postei acima.... mas talvez funcione dessa forma que tu ta tentando fazer, não sei dizer mas vou ver o que acho....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal estou tentando usar o ZUpdateSql...Mas não está funcionando... pois ele não tem a propriedade .ExecSql nem a Open .. o que fazer nesse caso..?AtenciosamenteElcio

hehe.. mas volto a lembrar que utilizei apenas uma vez... e utilizei da forma como postei acima.... mas talvez funcione dessa forma que tu ta tentando fazer, não sei dizer mas vou ver o que acho....

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.