Fórum Estou ficando louco, o que tem de errado neste codigo ? #421573

14/08/2012

0

Gente... o que tem de errado neste codigo pelo amor de Deus ???
Uma coisa tao simples..

Modulo.QPessoas.SQL.Clear;
Modulo.QPessoas.SQL.Add(insert into tbpessoas (tipo,nomerazao,Empresa,cpfcgc,cep,cidade,bairro,uf,site,email) values (:tipo,:nomerazao,:Empresa,:cpfcgc,:cep,:cidade,:bairro,:uf,:site,:email));
modulo.QPessoas.ParamByName(tipo).AsString := tipo;
modulo.QPessoas.ParamByName(nomerazao).AsString := nome razao;
modulo.QPessoas.ParamByName(empresa).AsString := empresa;
modulo.QPessoas.ParamByName(cpfcgc).AsString := cpfcgc;
modulo.QPessoas.ParamByName(cep).AsString := cep;
modulo.QPessoas.ParamByName(cidade).AsString := cidade;
modulo.QPessoas.ParamByName(bairro).AsString := bairro;
modulo.QPessoas.ParamByName(uf).AsString := uf;
modulo.QPessoas.ParamByName(site).AsString := site;
modulo.QPessoas.ParamByName(email).AsString := email;
modulo.QPessoas.ExecSQL;


o delphi me retorna um erro de sintaxe do sql...
usando mysql, delphi 2010, componente zeos...
e sempre deu certo ox !
Geison

Geison

Responder

Posts

14/08/2012

Iramar Junior

Gente... o que tem de errado neste codigo pelo amor de Deus ???
Uma coisa tao simples..

Modulo.QPessoas.SQL.Clear;
Modulo.QPessoas.SQL.Add(insert into tbpessoas (tipo,nomerazao,Empresa,cpfcgc,cep,cidade,bairro,uf,site,email) values (:tipo,:nomerazao,:Empresa,:cpfcgc,:cep,:cidade,:bairro,:uf,:site,:email));
modulo.QPessoas.ParamByName(tipo).AsString := tipo;
modulo.QPessoas.ParamByName(nomerazao).AsString := nome razao;
modulo.QPessoas.ParamByName(empresa).AsString := empresa;
modulo.QPessoas.ParamByName(cpfcgc).AsString := cpfcgc;
modulo.QPessoas.ParamByName(cep).AsString := cep;
modulo.QPessoas.ParamByName(cidade).AsString := cidade;
modulo.QPessoas.ParamByName(bairro).AsString := bairro;
modulo.QPessoas.ParamByName(uf).AsString := uf;
modulo.QPessoas.ParamByName(site).AsString := site;
modulo.QPessoas.ParamByName(email).AsString := email;
modulo.QPessoas.ExecSQL;


o delphi me retorna um erro de sintaxe do sql...
usando mysql, delphi 2010, componente zeos...
e sempre deu certo ox !


A unica coisa que vi e poderia esta ocasionando o erro é na linha
modulo.QPessoas.ParamByName(nomerazao).AsString := nome razao;

que tem um espaco nome razao, verificando se for isso deve ficar assim
modulo.QPessoas.ParamByName(nomerazao).AsString := nomerazao;

sem o espaço
Responder

Gostei + 0

14/08/2012

Geison

é que este forum tirou as aspas simples..
cada parametro está recebendo uma string somente para testar..
entao este parametro recebe := nome razao;
Responder

Gostei + 0

14/08/2012

Geison

Fiz um teste colocando diretamente os dados na instrução sql, e gravou, entao nao está sendo atribuido o valor ao parametro, mas pela teoria está certo. alguem sabe como soluciona este caso ?
Responder

Gostei + 0

14/08/2012

Geison

Bom galera, resolvi o problema usando
.value
ao inves de
.asstring

Nao sei porque, mas agora ta ok.
Tks.
Responder

Gostei + 0

14/08/2012

Deivison Melo

existia o espaço no nome da razão? No código estava: nome razao;

Modulo.QPessoas.SQL.Clear;
Modulo.QPessoas.SQL.Add(insert into tbpessoas (tipo,nomerazao,Empresa,cpfcgc,cep,cidade,bairro,uf,site,email)
values (:tipo,:nomerazao,:Empresa,:cpfcgc,:cep,:cidade,:bairro,:uf,:site,:email));
modulo.QPessoas.ParamByName(tipo).AsString := tipo;
modulo.QPessoas.ParamByName(nomerazao).AsString := nome razao; // existe esse espaço aqui mesmo?
modulo.QPessoas.ParamByName(empresa).AsString := empresa;
modulo.QPessoas.ParamByName(cpfcgc).AsString := cpfcgc;
modulo.QPessoas.ParamByName(cep).AsString := cep;
modulo.QPessoas.ParamByName(cidade).AsString := cidade;
modulo.QPessoas.ParamByName(bairro).AsString := bairro;
modulo.QPessoas.ParamByName(uf).AsString := uf;
modulo.QPessoas.ParamByName(site).AsString := site;
modulo.QPessoas.ParamByName(email).AsString := email;
modulo.QPessoas.ExecSQL;
Responder

Gostei + 0

14/08/2012

Deivison Melo

Se funcionou, então jóia!

Qualquer anormalidade por favor mencionar!

Responder

Gostei + 0

14/08/2012

Romulo Contro

vc poderia ter feito também:

Modulo.QPessoas.SQL.Text := sql aqui;

ao invés de Modulo.QPessoas.SQL.Add

assim eu acho que nao daria erro também...
Responder

Gostei + 0

14/08/2012

Douglas Michelino

Eu utilizo assim

adoquery.Parameters.ParamByName(login).Value:=teste;
Responder

Gostei + 0

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

Aceitar