鍥句功绠$悊淇℃伅绯荤粺寮€鍙戞枃妗?- 鐧惧害鏂囧簱 下载本文

adoquery1.SQL.Clear;

adoquery1.SQL.Add('select a.*,b.*,c.* from 图书借阅 a,图书信息 b,读者信息 c');

adoquery1.SQL.Add('where (a.图书编号=b.图书编号)and(a.读者编号=c.编号)and(状态=''未还'')'); adoquery1.SQL.Add('and(c.编号 like ''%'+edit1.Text+'%'')'); adoquery1.SQL.Add('and(a.图书编号 like ''%'+edit2.Text+'%'')'); adoquery1.SQL.Add('and(c.姓名 like ''%'+edit3.Text+'%'')'); adoquery1.Open;

//将查询得到的数据复制到数据表中 adotable1.Clone(adoquery1,ltUnspecified); end;

procedure TbookbackF.BitBtn2Click(Sender: TObject); var

returndate:TDateTime; money:double; fine,num:string; begin inherited;

returndate:=adotable1.FieldByName('应还时间').AsDateTime; num:=adotable1.FieldByName('借阅编号').AsString; //搜索数据库中有无此书

if num='' then showmessage('已无此书'); if (date+time-returndate)>0 then begin

//超期图书按每天0.1元交纳罚金 money:=0.1*(date-returndate);

fine:= InputBox('该书已经过期,需交纳罚金', '应交纳的罚金', floattostr(money)); adocommand1.CommandText:='exec sf_图书归还 '+num+','+fine; end else

adocommand1.CommandText:='exec sf_图书归还 '+num+',0'; adocommand1.Execute; //更新数据库

adoquery1.Active:=false; adoquery1.Active:=true;

adotable1.Clone(adoquery1,ltunspecified);

//注销掉从父窗体中继承来的代码,因为父窗体中是从一个表中查询的,这里因为需要用到多表查询

//inherited; adoquery1.Close; adoquery1.SQL.Clear;

adoquery1.SQL.Add('select a.*,b.*,c.* from 图书借阅 a,图书信息 b,读者信息 c');

adoquery1.SQL.Add('where (a.图书编号=b.图书编号)and(a.读者编号=c.编号)and(状态=''未还'')');

adoquery1.SQL.Add('and(c.编号 like ''%'+edit1.Text+'%'')'); adoquery1.SQL.Add('and(a.图书编号 like ''%'+edit2.Text+'%'')'); adoquery1.SQL.Add('and(c.姓名 like ''%'+edit3.Text+'%'')'); adoquery1.Open;

//将查询得到的数据复制到数据库中 adotable1.Clone(adoquery1,ltUnspecified);