数据库中有一表A,有ID,F1,F2,F3,若干记录!现在想取ID字段为500的那条记录,Tedit1显示ID值(此时为500),Tedit2显示字段F1的值,Tedit3显示字段F2的值,Tedit4显示字段F3的值。如何写存储过程和Delphi中的程序?

解决方案 »

  1.   

    直接用感应控件好了呗dbedit,设定数据源指向字段就行了
      

  2.   

    用query按ID=500查询出那条记录,用DBedit控件的datasource属性和query关联,再设置DBedit控件的datafield属性为你想显示的字段就行了
      

  3.   

    select * from table where ID=500
    DBedit控件的datasource属性:query1
    DBedit控件的datafield属性:ID,F1,F2,F3
      

  4.   

    楼上正解,数据操作,还是用DBEdit这个空间比较方便
      

  5.   

    adoQuery1.Close;
    adoQuery1.SQL.Clear;
    adoQuery1.SQL.Text:='select * from A where id=500';
    adoQuery1.Open;
    if not adoQuery1.Eof then
      begin
        Edit1.Text := adoQuery1.FieldByName('id').AsString;
        Edit2.Text := adoQuery1.FieldByName('f1').AsString;
        Edit3.Text := adoQuery1.FieldByName('f2').AsString;
        Edit4.Text := adoQuery1.FieldByName('f3').AsString;
      end;
      

  6.   

    DBedit控件的datasource属性:应该为datasource1,datasource1的DATESET为ADOQuery1
    DBedit控件的datafield属性指定不到ID,F1,F2,F3
    还是要写ADOQuery1程序指定吧?
      

  7.   

    adoQuery1这个是怎么创建的 啊 ?
      

  8.   

    ...组件面板上有.在ADO页面.也可以动态创建:
    var adoQuery1:TADOQuery; adoQuery1:=TADOQuery.Create(nil);
      

  9.   

    adoQuery1.Close;
    adoQuery1.SQL.Clear;
    adoQuery1.SQL.Text:='select * from A where id=:a';
    adoquery1.parameters.parametersbyname('a').value:=edit1.text;//(:='500')
    adoQuery1.Open;
    if not adoQuery1.Eof then
      begin
      Edit2.Text := adoQuery1.FieldByName('f1').AsString;
      Edit3.Text := adoQuery1.FieldByName('f2').AsString;
      Edit4.Text := adoQuery1.FieldByName('f3').AsString;
      end;引用6楼,把代码加到edit1事件中,可以根据输入的ID值查询定位
      

  10.   


    adoquery1.Close;
    adoquery1.SQL.text.Clear;
    adoquery1.SQL.Text:='select * from tbA where ID=:a';
    adoquery1.parameters.ParamByName('a').value:=trim(edit1.text);//edit1入任意id
    adoQuery1.Open;
    if adoQuery1.RecordCount<>0 then
      begin
      Edit2.Text := adoQuery1.FieldByName('f1').AsString;
      Edit3.Text := adoQuery1.FieldByName('f2').AsString;
      Edit4.Text := adoQuery1.FieldByName('f3').AsString;
      end;
      

  11.   

    如何在DBGrid中添加字段名 啊  就是灰色的那一行,我用的是DataSource ADOQuery connDate 这几个控件连接的数据库 数据可以显示出来 就是没有字段名对应 如何解决?
      

  12.   

    直接用DBEdit指向你要的字段不就好了吗?
      

  13.   

    这当然OK了,只是操作太麻烦了,用dbedit或者cxdbedit多方便啊