请问:如果现在对一个学生信息表格进行查询,主键(key)为:学号(sn)。要查询5班的全体学生的姓名(name),生日(birthday),并按其出生日期升序排列。
现在俺采用的数据库是delphi自带的数据库Database desktop中的Paradox 7。数据连接方式为:BDE。问题是:怎么我的查询结果只能显示第一个同学啊?如何编码才能显示所有查询结果并按birthday排列啊?采用什么控键显示所有的查询结果?如何才能把这次查询的结果打印出来啊?谢谢啊! 代码如下:
procedure TForm2.Button1Click(Sender: TObject);
begin
with table1 do
begin
label1.Caption:='';
indexfieldnames:='class';
setkey;
if edit1.Text='' then
showmessage('请输入班级号')
else
fieldbyname('class').AsString:=edit1.Text;
if gotokey then
begin
label1.Caption:='查找成功';
edit1.Text:=fieldbyname('class').AsString;
edit2.Text:=fieldbyname('name').AsString;
edit3.Text:=fieldbyname('birthday').AsString;
end
else
begin
label1.Caption:='查找失败';
end;
end;
end;
end
现在俺采用的数据库是delphi自带的数据库Database desktop中的Paradox 7。数据连接方式为:BDE。问题是:怎么我的查询结果只能显示第一个同学啊?如何编码才能显示所有查询结果并按birthday排列啊?采用什么控键显示所有的查询结果?如何才能把这次查询的结果打印出来啊?谢谢啊! 代码如下:
procedure TForm2.Button1Click(Sender: TObject);
begin
with table1 do
begin
label1.Caption:='';
indexfieldnames:='class';
setkey;
if edit1.Text='' then
showmessage('请输入班级号')
else
fieldbyname('class').AsString:=edit1.Text;
if gotokey then
begin
label1.Caption:='查找成功';
edit1.Text:=fieldbyname('class').AsString;
edit2.Text:=fieldbyname('name').AsString;
edit3.Text:=fieldbyname('birthday').AsString;
end
else
begin
label1.Caption:='查找失败';
end;
end;
end;
end
SelectSQL:= 'Select * from 表名 where 条件'
然后现实在dbgrid中就可以了