PAGUE 6 MESES
LEVE 12 MESES
GARANTIR DESCONTO

Fórum Update no SQL com o ADOQuery... #217505

01/03/2004

0

Pessoal
Estou tentando fazer um update na minha tabela usando o componente ADOQuery
Fiz a seguinte rotina no delphi

procedure TfrmClientes.btnEditarClick(Sender: TObject);
VAR
TESTE : Widestring;

begin
With DM_Administrador.QryUpdate_Clientes do
begin
SQL.Clear;
SQL.Add(´UPDATE CLIENTES SET ID_CLIENTE =:ID_CLIENTE,RAZAO_SOCIAL =:RAZAO_SOCIAL,FANTASIA =:FANTASIA,ENDERECO =:ENDERECO,COMPLEMENTO =:COMPLEMENTO,´);
SQL.Add(´BAIRRO =:BAIRRO,CIDADE =:CIDADE,CEP =:CEP,UF =:UF,DATA_CADASTRO =:DATA_CADASTRO,DDD =:DDD,TELEFONE_COM =:TELEFONE_COM, TELEFONE_RES =:TELEFONE_RES,´);
SQL.Add(´TELEFONE_CELULAR =:TELEFONE_CELULAR, FAX =:FAX, E_MAIL =:E_MAIL, SITE =:SITE, PESSOA_FISICA_JURIDCA =:PESSOA_FISICA_JURIDCA, CPF =:CPF, CNPJ =:CNPJ,INSC_EST =:INSC_EST,NOME_REPRESENTANTE =:NOME_REPRESENTANTE,´);
SQL.Add(´DATA_RETORNO =:DATA_RETORNO,OBSERVACOES =:OBSERVACOES,SO =:SO,QTDE_EQUIP =:QTDE_EQUIP,RG =:RG,REGIAO =:REGIAO,CONTATO =:CONTATO,TIPO_CONTRATACAO =:TIPO_CONTRATACAO´);
SQL.Add(´WHERE ID_CLIENTE =:ID_CLIENTE´);
Parameters.ParamByName(´ID_CLIENTE´).Value:= StrToInt(lblId_Cliente.Caption);
Parameters.ParamByName(´RAZAO_SOCIAL´).Value := edtRazao_Social.Text;
Parameters.ParamByName(´FANTASIA´).Value:= edtFantasia.Text;
Parameters.ParamByName(´ENDERECO´).Value:= edtEndereco.Text;
Parameters.ParamByName(´COMPLEMENTO´).Value:= edtComplemento.Text;
Parameters.ParamByName(´BAIRRO´).Value:= edtBairro.Text;
Parameters.ParamByName(´CIDADE´).Value:= edtCidade.Text;
Parameters.ParamByName(´CEP´).Value:= edtCep.Text;
Parameters.ParamByName(´UF´).Value:= cmbUF.Text;
Parameters.ParamByName(´DATA_CADASTRO´).Value:= StrToDate(lblData_Cadastro2.Caption);
Parameters.ParamByName(´DDD´).Value:= edtDDD.Text;
Parameters.ParamByName(´TELEFONE_COM´).Value:= edtTel_Com.Text;
Parameters.ParamByName(´TELEFONE_RES´).Value:= edtTel_Res.Text;
Parameters.ParamByName(´TELEFONE_CELULAR´).ValuE:=edtTel_Celular.Text;
Parameters.ParamByName(´FAX´).Value:= edtFax.Text;
Parameters.ParamByName(´E_MAIL´).Value:= edtE_Mail.Text;
Parameters.ParamByName(´SITE´).Value:= edtSite.Text;
Parameters.ParamByName(´PESSOA_FISICA_JURIDCA´).Value:= cmbPessoa.Text;
Parameters.ParamByName(´CPF´).Value:= edtCPF.Text;
Parameters.ParamByName(´CNPJ´).Value:= edtCNPJ.Text;
Parameters.ParamByName(´INSC_EST´).Value:= edtInsc_Estadual.Text;
Parameters.ParamByName(´NOME_REPRESENTANTE´).Value:= edtRepresentante.Text;
Parameters.ParamByName(´DATA_RETORNO´).Value:= StrToDate(edtData_Retorno.Text);
Parameters.ParamByName(´OBSERVACOES´).Value := memObservacoes.Text;
Parameters.ParamByName(´SO´).Value := edtSO.Text;
Parameters.ParamByName(´QTDE_EQUIP´).Value:= edtQtde_Equip.Text;
Parameters.ParamByName(´RG´).Value := edtRG.Text;
Parameters.ParamByName(´REGIAO´).Value := edtRegiao.Text;
Parameters.ParamByName(´CONTATO´).Value:= edtContato.Text;
Parameters.ParamByName(´TIPO_CONTRATACAO´).Value:= edtTipo_Contratacao.Text;
Parameters.ParamByName(´OBSERVACOES´).Value:= memObservacoes.Text;
try
ExecSQL;
DM_Administrador.QryUpdate_Clientes.Close;
except
on Erro:EDatabaseError do
begin
MessageDlg(´Informação sendo alterada por outro usuário.´,mtWarning,[mbOk,mbHelp],16);
DM_Administrador.QryUpdate_Clientes.Active:= False;
end;
end;

end;
MessageDlg(´REGISTRO ALTERADO.´,mtInformation,[mbOk], 0);
end;

Quando executo essa rotina ele me diz que foi alterado o registro,mas quando verifico no banco o registro continua inalterado..

Há algum problema quanto a atualização com o componente ADOQuery.

Alguem poderia me ajudar


Desde já agradeço a atenção

[]´s

Marcos


Marcosmp

Marcosmp

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar