我想先按专业查询,在dbgrid中列出老师的姓名,再在dbgrid中选老师的名字,在下边的edit中输出老师的详细情况,请高手帮忙看程序是怎么做的
查询老师姓名,我已经作好下边是程序的后半部分
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from 教师表');
adoquery1.SQL.Add('where 教师姓名=:教师姓名');
adoquery1.Parameters.ParamByName('教师姓名').Value:=dbgrid1.SelectedField.Text;
adoquery1.Open; edit1.Text:=dbgrid1.Fields[1].AsString;
edit2.Text:=dbgrid1.Fields[4].AsString;
end;
查询老师姓名,我已经作好下边是程序的后半部分
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from 教师表');
adoquery1.SQL.Add('where 教师姓名=:教师姓名');
adoquery1.Parameters.ParamByName('教师姓名').Value:=dbgrid1.SelectedField.Text;
adoquery1.Open; edit1.Text:=dbgrid1.Fields[1].AsString;
edit2.Text:=dbgrid1.Fields[4].AsString;
end;
adoquery1:missing sql property 请问这是什么原因呢?
如果不连接adoquery1的话,首先进行的按专业查询怎么进行?不会显示啊
如果连接adoquery1的话,下面的dbedit又没有办法绑定?
这个问题怎么解决呢?
建议使用:
edit1.Text:=adoquery1.fieldbyname('需要显示的字段').AsString;
edit2.Text:adoquery1.fieldbyname('需要显示的字段').AsString;
TeacherName:=Column.Field.Value;就可以了~然后
with adoquery1 do
begin
close;
sql.clear;
sql.add('select * from 教师表 where 教师姓名='''+TeacherName+'''');
open;//如果选择结果只有一条纪录,就可以按下面代码赋值
edit1.text:=FieldByName('什么什么').asstring;
end;
上面是我想的代码,但是估计不会出错,你试一下吧~要是可以记得给分就可以了~