又是Table惹的祸,大家来帮我看看啊!(100分)

  • 主题发起人 主题发起人 流浪者
  • 开始时间 开始时间

流浪者

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TForm2.Button4Click(Sender: TObject);
begin
Datasource5.Dataset :=Table3;
Table3.Active :=True;
if Table3.findkey([Edit3.text,Edit4.Text]) then
begin

if Table2.findkey([Edit3.text])and Table1.Findkey([Edit4.text]) then
begin
Table1.Edit;
Table2.Edit;
Table1.FieldByName('剩余数量').asinteger:=Table1.FieldByName('剩余数量').asinteger+1;
Table2.FieldByName('借书数量').asinteger :=Table2.FieldByName('借书数量').asinteger-1;
Table1.post;
Table2.post;
end
else
showmessage('对不起,您没有借这本书!');

Table3.Edit;
Table3.delete;
Table3.post;
showmessage('还书成功!') ;
end
else
showmessage('您输入的学号或者书记编号不正确!');
end;


这段代码为什么会出错啊???

Table3不在EDIT状态??头都大了,帮帮我吧!
 
Table3.delete;后就不必再 Table3.post;
已转为browse状态了
 
像下面这样:
// Table3.Edit;
Table3.delete;
// Table3.post;
 
谢谢,马上试验!
 
搞定,。马上分分,同时请问,在什么情况下TABLE才需要EDIT和POST啊??
另300分送上!
 
多人接受答案了。
 
三种状态: browse(浏览),edit(编辑),insert(插入)
若处在browse时要修改数据需要edit 插入数据append或运行insert SQL语句
删除则不必.
若处在edit(编辑),insert(插入)状态需要保存数据,则要post.
建议你找一些书看看,有问题先查查旧的纪录。

 
后退
顶部