Como gravar usando SQL?
Boa tarde amigos Delphianos, gostaria de saber como gravar em SQL este codigo
Mudar pra essi
Veja bem num quero que ninguem fassa o SQL só me explicar como coloco o que esta dentro do edit nos campos igaul essi
dm.TBconta.fieldbyname(´numcontac´).value:=et2.text;
me sql como seria?
Outra coisa gravo em dupicidade estes campos tem como fazer em SQL tambem, e esti outro campo como gravarei em SQL
DM.tbconta.FieldByName(´dataextenso´).value:=uppercase(formatdatetime(´MMMM´,(STRTODATE(Maskedit1.TEXT)))
+´ / ´+formatdatetime(´YYYY´,(STRTODATE(MaskEdit1.TEXT))));
DM.tbconta.FieldByName(´mes´).value:=uppercase(formatdatetime(´MM´,(STRTODATE(Maskedit1.TEXT))));
DM.tbconta.FieldByName(´ANO´).value:=uppercase(formatdatetime(´YYYY´,(STRTODATE(Maskedit1.TEXT))));
Agora antes de fazer o codigo SQL a pergunta, compensa gravar usando o insert into ou usar o ttable mesmo?
dm.TBconta.Last; ProxNum:=dm.TBconta.FieldByName(´sequencia´).AsInteger +1; dm.TBconta.Append; dm.TBconta.Edit; dm.TBconta.FieldByName(´sequencia´).AsInteger:=ProxNum; dm.TBconta.fieldbyname(´contad´).value:=e1.text; dm.TBconta.fieldbyname(´numcontad´).value:=et1.text; dm.TBconta.fieldbyname(´nomecd´).value:=label12.caption; dm.TBconta.fieldbyname(´numconta´).value:=et1.text; dm.TBconta.fieldbyname(´nomeCONTA´).value:=label12.caption; dm.TBconta.fieldbyname(´valord´).value:=e3.text; dm.TBconta.fieldbyname(´valor´).value:=e3.text; //valor fixo p/calculo soma dm.TBconta.fieldbyname(´conta´).value:=e1.Text; dm.TBConta.FieldByName(´DC´).value:=´D´; dm.TBconta.fieldbyname(´descricao´).value:=r1.text; dm.tbconta.fieldbyname(´data´).value:=maskedit1.text; DM.tbconta.FieldByName(´dataextenso´).value:=uppercase(formatdatetime(´MMMM´,(STRTODATE(Maskedit1.TEXT))) +´ / ´+formatdatetime(´YYYY´,(STRTODATE(MaskEdit1.TEXT)))); DM.tbconta.FieldByName(´mes´).value:=uppercase(formatdatetime(´MM´,(STRTODATE(Maskedit1.TEXT)))); DM.tbconta.FieldByName(´ANO´).value:=uppercase(formatdatetime(´YYYY´,(STRTODATE(Maskedit1.TEXT)))); dm.TBconta.fieldbyname(´historico´).value:=r1.text; dm.TBconta.POST; //-grava credito-------------- dm.TBconta.Append; dm.TBconta.Edit; aguardedadoson; dm.TBconta.FieldByName(´sequencia´).AsInteger:=ProxNum; dm.TBconta.fieldbyname(´contac´).value:=e2.text; dm.TBconta.fieldbyname(´numcontac´).value:=et2.text; dm.TBconta.fieldbyname(´nomecc´).value:=label13.caption; dm.TBconta.fieldbyname(´numconta´).value:=et2.text; dm.TBconta.fieldbyname(´nomecONTA´).value:=label13.caption; dm.TBconta.fieldbyname(´valorc´).value:=e3.text; dm.TBconta.fieldbyname(´valor´).value:=e3.text; //valor fixo p/calculo soma dm.TBconta.fieldbyname(´conta´).value:=e2.Text; dm.TBConta.FieldByName(´DC´).value:=´C´; dm.TBconta.fieldbyname(´descricao´).value:=r1.text; dm.tbconta.fieldbyname(´data´).value:=maskedit1.text; DM.tbconta.FieldByName(´dataextenso´).value:=uppercase(formatdatetime(´MMMM´,(STRTODATE(Maskedit1.TEXT))) +´ / ´+formatdatetime(´YYYY´,(STRTODATE(MaskEdit1.TEXT)))); DM.tbconta.FieldByName(´mes´).value:=uppercase(formatdatetime(´MM´,(STRTODATE(Maskedit1.TEXT)))); DM.tbconta.FieldByName(´ANO´).value:=uppercase(formatdatetime(´YYYY´,(STRTODATE(Maskedit1.TEXT)))); dm.TBconta.fieldbyname(´historico´).value:=r1.text; dm.TBconta.POST;
Mudar pra essi
with dm.qtbcontalan do begin close; sql.clear; SQL.Add(´Insert into qtbcontalan (sequencia, contad,nomecd, numconta, nomeconta, valord, valor, conta, dc, descricao, data, dataextenso, mes, ano, historico) values (´+´´´´+edit1.Text+´´´´+´) ´); ExecSQL;
Veja bem num quero que ninguem fassa o SQL só me explicar como coloco o que esta dentro do edit nos campos igaul essi
dm.TBconta.fieldbyname(´numcontac´).value:=et2.text;
me sql como seria?
Outra coisa gravo em dupicidade estes campos tem como fazer em SQL tambem, e esti outro campo como gravarei em SQL
DM.tbconta.FieldByName(´dataextenso´).value:=uppercase(formatdatetime(´MMMM´,(STRTODATE(Maskedit1.TEXT)))
+´ / ´+formatdatetime(´YYYY´,(STRTODATE(MaskEdit1.TEXT))));
DM.tbconta.FieldByName(´mes´).value:=uppercase(formatdatetime(´MM´,(STRTODATE(Maskedit1.TEXT))));
DM.tbconta.FieldByName(´ANO´).value:=uppercase(formatdatetime(´YYYY´,(STRTODATE(Maskedit1.TEXT))));
Agora antes de fazer o codigo SQL a pergunta, compensa gravar usando o insert into ou usar o ttable mesmo?
Jlimajr
Curtidas 0
Respostas
Paullsoftware
28/07/2006
voce pode criar os valores como parametros tipo:
depois da o ExecSql; espero ter ajudado :wink:
´values (:Campo1, :Campo2, :CampoN)´;
ParamByName(´Campo1´).AsString := Edit1.Text; ParamByName(´Campo2´).AsString := Edit2.Text; ParamByName(´CampoN´).AsString := EditN.Text;
depois da o ExecSql; espero ter ajudado :wink:
GOSTEI 0
Jlimajr
28/07/2006
Entendi colega, muito bom, agora a pergunta, é melhor usar ou seja incluir usando SQL ou usando da forma que está acima tipo append e depois post
GOSTEI 0
Paullsoftware
28/07/2006
Entendi colega, muito bom, agora a pergunta, é melhor usar ou seja incluir usando SQL ou usando da forma que está acima tipo append e depois post
Creio que as duas maneiras são corretas, porém até onde sei os comandos SQL são processados de forma mais rápida sem contar que os dados são gravados direto no banco...
GOSTEI 0
Jlimajr
28/07/2006
No caso preciso usar commit e rollback tambem em SQL?
to usando firebird 1.5 delphi 5.0
to usando firebird 1.5 delphi 5.0
GOSTEI 0
Jlimajr
28/07/2006
opa esqueci de mencionar qui tambem uso a aba interbase com ibquery, ibtransaction e ibtable.
e o applyupdates(0) naum sei pra que serve.
desculpe sou iniciante.
e o applyupdates(0) naum sei pra que serve.
desculpe sou iniciante.
GOSTEI 0
Raserafim
28/07/2006
applyupdates é uma função do ClientDataSet que grava os dados para o Banco de Dados. entre parênteses é o parâmetro que é especificado quantos erros são permitidos.
ex: se fizer assim: if ClientDataSet.ApplyUpdates(0) then
quer dizer que se a atualização ocorrer sem nenhum erro então...
ex: se fizer assim: if ClientDataSet.ApplyUpdates(0) then
quer dizer que se a atualização ocorrer sem nenhum erro então...
GOSTEI 0