Você tá fazendo a maior confusão na sequência correta para montar a query. Você 
não pode dar Open antes de passar os parâmetros, não precisa usar Clear se você 
está atribuindo direto na property Text e fique atento aos tipos dos campos:


QryConsulta. SQL.text: ='select Nome_antibiotico from tb_antibioticos Where 
Cod_antibiotico = :Cod_antibiotico' ;
QryConsulta. ParamByName( 'Cod_antibiotico').AsInteger := StrToInt(codigo);
QryConsulta. Open;
Result:= QryConsulta. FieldByName( 'Nome_Antibiotico').AsString;
QryConsulta. Close;

 Luciano Calenzani Simões






________________________________
De: pablo freitas <pablojfrei...@yahoo.com.br>
Para: delphi-br@yahoogrupos.com.br
Enviadas: Segunda-feira, 2 de Novembro de 2009 10:46:51
Assunto: Re: Res: [delphi-br] retornar valor funçao que contem banco

  

Olá Luciano, muito obrigado mesmo pela ajuda.... Começou a iluminar o meu 
programa,só que agora, está dando erro de "QryConsulta: Field 'Cod_antibiotico' 
is of an unknown type."  

Eu acho que o tipo de parametro passado não está bantendo com o tipo do banco:
Lembrando: estou usando o banco Paradox do delphi mesmo  {campos tabela 
tb_antibioticos: Cod_antibiotico (tipo Alpha - Chave)| Nome_antibiotico (tipo 
Alpha) }

e o codigo:
function nome_anti(codigo: string):string; //boolean;
begin
    with form2 do
    begin
       QryConsulta. Close;
        QryConsulta. SQL.Clear;
QryConsulta. SQL.text: ='select Nome_antibiotico from tb_antibioticos Where 
Cod_antibiotico = :Cod_antibiotico' ;
        qryConsulta. Open;
        QryConsulta. ParamByName( 'Cod_antibiotico ').AsString := codigo;
       Result:= QryConsulta. FieldByName( 'Nome_Antibiotic o').AsString;
       QryConsulta. Close;
    end;

end;

procedure TForm1.CBox1Select( Sender: TObject);

begin

edit1.Text:= nome_anti(CBox1. Text);

end;

Obrigado


      
____________________________________________________________________________________
Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

[As partes desta mensagem que não continham texto foram removidas]

Responder a