Fórum Problemas com consultas no delphi #187930
11/10/2003
0
Ola, estou tentando executar uma query da seguinte forma:
DmlPrincipal.TBFORNECEDORES.Open;
with DmlPrincipal.QRYFORNECEDORES1 do
begin
Close;
with SQL do
begin
Clear;
Add (´SELECT *´);
Add (´FROM FORNECEDORES´);
Add (´WHERE FRNOME = ´´ + CBxFornecedor.Text + ´´´);
end;
Open;
end;
DmlPrincipal.TBPRODUTOS.Fields[3].Value:= DmlPrincipal.TBFORNECEDORES.Fields[0].Value;
DmlPrincipal.TBFORNECEDORES.Close;
só que o delphi retorna o seguinte erro:
Project LSManager.exe raised exception class EIBInterBaseError with message ´Dynamic SQL Error SQL Error code = -206 Column Unknown GATOS´.
Obs, no combobox eu tenho alguns valores como GATOS......o que posso fazer para resolver esse problema...desde ja agradeço....KANIGGIA
DmlPrincipal.TBFORNECEDORES.Open;
with DmlPrincipal.QRYFORNECEDORES1 do
begin
Close;
with SQL do
begin
Clear;
Add (´SELECT *´);
Add (´FROM FORNECEDORES´);
Add (´WHERE FRNOME = ´´ + CBxFornecedor.Text + ´´´);
end;
Open;
end;
DmlPrincipal.TBPRODUTOS.Fields[3].Value:= DmlPrincipal.TBFORNECEDORES.Fields[0].Value;
DmlPrincipal.TBFORNECEDORES.Close;
só que o delphi retorna o seguinte erro:
Project LSManager.exe raised exception class EIBInterBaseError with message ´Dynamic SQL Error SQL Error code = -206 Column Unknown GATOS´.
Obs, no combobox eu tenho alguns valores como GATOS......o que posso fazer para resolver esse problema...desde ja agradeço....KANIGGIA
Kaniggia
Curtir tópico
+ 0
Responder
Posts
11/10/2003
Vinicius2k
acho, q seu problema está aqui... nas aspas... eh realmente um pouco confuso passar a string sql referenciando valores de propriedades dos objetos... eu, particularmente, procuro sempre usar parâmetros...
tente fazer desta forma :
espero ter ajudado...
Add (´WHERE FRNOME = ´´ + CBxFornecedor.Text + ´´´);
tente fazer desta forma :
with DmlPrincipal.QRYFORNECEDORES1 do begin Close; with SQL do begin Clear; Add (´SELECT *´); Add (´FROM FORNECEDORES´); Add (´WHERE FRNOME = :Fornecedor); end; ParamByName(´Fornecedor´).AsString:= CBxFornecedor.Text; Open; end;
espero ter ajudado...
Responder
Gostei + 0
11/10/2003
Edineidaniel
Olá,
Vou reformular o seu SQL.
with DmlPrincipal.QRYFORNECEDORES1 do
begin
Close;
Clear;
Add (´SELECT *´);
Add (´FROM FORNECEDORES´);
Add (´WHERE FRNOME = ´´ + CBxFornecedor.Text + ´´´);
Open;
end;
DmlPrincipal.TBFORNECEDORES.Open;
DmlPrincipal.TBFORNECEDORES.Active := True;
DmlPrincipal.TBPRODUTOS.FieldByName(´NOme do campo´).Text := DmlPrincipal.TBFORNECEDORES.FieldByName(´Nome do campo´).Text;
DmlPrincipal.TBFORNECEDORES.Close;
Não sei se vc não tem q ainda dar um insert na sua tabela, pois pelo que eu vejo vc está jogando valores de uma tabela para outra..
t+
Edinei
Vou reformular o seu SQL.
with DmlPrincipal.QRYFORNECEDORES1 do
begin
Close;
Clear;
Add (´SELECT *´);
Add (´FROM FORNECEDORES´);
Add (´WHERE FRNOME = ´´ + CBxFornecedor.Text + ´´´);
Open;
end;
DmlPrincipal.TBFORNECEDORES.Open;
DmlPrincipal.TBFORNECEDORES.Active := True;
DmlPrincipal.TBPRODUTOS.FieldByName(´NOme do campo´).Text := DmlPrincipal.TBFORNECEDORES.FieldByName(´Nome do campo´).Text;
DmlPrincipal.TBFORNECEDORES.Close;
Não sei se vc não tem q ainda dar um insert na sua tabela, pois pelo que eu vejo vc está jogando valores de uma tabela para outra..
t+
Edinei
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)