Ir para conteúdo

POWERED BY:

Arquivado

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

kisuel

update

Recommended Posts

alguem pode me informar onde e q ta o erro no update abaixo.ja conferi as tabelas, campos, variaveis,o erro q aparece e o seguinte"Erro de sintaxe na instrução UPDATE"procedure Tfrmfornecedor.bbtnalteraClick(Sender: TObject);varcodconsulta :integer;medico, local, data, especi, senha, codfor: string;teste:boolean;begin if (edtcodconsulta.Text <> 'Auto') and (edtcodconsulta.Text <> '') then begin teste:=true; if edtcod.GetTextLen = 0 then begin if MessageDLg('Favor inserir um Paciente!',mterror, [mbyes{, mbno}], 0)=mryes then edtcod.SetFocus; teste:=false; end else begin codfor:=edtcod.Text; senha:=edtsenha.Text; data:=edtdia.Text; medico:=edtmedico.Text; local:=edtlocal.Text; especi:=edtespeci.Text; with dm do begin adocmd.CommandText:='select * from consulta where codconsulta = :codconsulta'; adocmd.Parameters.ParamByName('codconsulta').Value:=edtcodconsulta.Text; adodscon.Recordset:=adocmd.Execute; if adodscon.RecordCount > 0 then begin codconsulta:=adodscon.FieldValues['codconsulta']; try adocon.BeginTrans; adocmd.CommandText:='UPDATE consulta set codfor = :codfor, data = :data, medico = :medico, local = :local, senha = :senha, especi = :especi where codconsulta = :codconsulta'; adocmd.Parameters.ParamByName('codfor').Value:=codfor; adocmd.Parameters.ParamByName('data').Value:=data; adocmd.Parameters.ParamByName('medico').Value:=medico; adocmd.Parameters.ParamByName('local').Value:=local; adocmd.Parameters.ParamByName('senha').Value:=senha; adocmd.Parameters.ParamByName('especi').Value:=especi; if MessageDLg('Deseja ALTERAR os dados?',mtconfirmation, [mbyes, mbno], 0)=mryes then adocmd.Execute; adocon.CommitTrans; except on eadoerror do begin adocon.RollbackTrans; showmessage('Impossivel conectar ao bando de dados!'); end; end; end; end;ATE MAIS RAPAZIADA end; end;end;

Compartilhar este post


Link para o post
Compartilhar em outros sites

meu,,, tá certo..

mas se fosse eu não faria assim..

eu já decia logo os valores.. como string mesmo..

adocmd.CommandText:=concat('UPDATE consulta set codfor = ',    quotedStr(codfor),   ', data = ' , quotedStr(data),   '  where codconsulta = ', quotedStr(codconsulta));
se é q você me entende..

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.