with ClientDataSet1 do
begin
commandtext:='';
close;
commandtext:='select * from yonghu where id='+edit_id.text+'';
open;
// fieldbyname('username').AsString:=edit_name.Text;
edit;
Fieldbyname('userpsw').AsString:=edit_psw.Text;
Fieldbyname('lastdate').AsDateTime:=edit_rq.Date;
Fieldbyname('userinfo').AsString:=edit_pcinfo.Text;
Fieldbyname('bz').AsString:=edit_bz.Text;
post;
ApplyUpdates(0);
这个写法有问题吗/?为什么我修改完又变回来了
在学习三层。服务端是socket +aoquery +DataSetProvider1+access新增可以。删除一记录也无效
if not ClientDataSet1.eof then
if MessageDlg('真的要删除这一行吗?',mtinformation,[mbyes,mbno],0)=idyes then
ClientDataSet1.Delete;
begin
commandtext:='';
close;
commandtext:='select * from yonghu where id='+edit_id.text+'';
open;
// fieldbyname('username').AsString:=edit_name.Text;
edit;
Fieldbyname('userpsw').AsString:=edit_psw.Text;
Fieldbyname('lastdate').AsDateTime:=edit_rq.Date;
Fieldbyname('userinfo').AsString:=edit_pcinfo.Text;
Fieldbyname('bz').AsString:=edit_bz.Text;
post;
ApplyUpdates(0);
这个写法有问题吗/?为什么我修改完又变回来了
在学习三层。服务端是socket +aoquery +DataSetProvider1+access新增可以。删除一记录也无效
if not ClientDataSet1.eof then
if MessageDlg('真的要删除这一行吗?',mtinformation,[mbyes,mbno],0)=idyes then
ClientDataSet1.Delete;
begin
commandtext:='';
close;
commandtext:='select * from yonghu where id='+edit_id.text+'';
open;
// fieldbyname('username').AsString:=edit_name.Text;
edit;
Fieldbyname('userpsw').AsString:=edit_psw.Text;
Fieldbyname('lastdate').AsDateTime:=edit_rq.Date;
Fieldbyname('userinfo').AsString:=edit_pcinfo.Text;
Fieldbyname('bz').AsString:=edit_bz.Text;
post;
ApplyUpdates(0); 提交过程中有没有错误?
ApplyUpdates(-1);试下
有没有这条记录?
如果我点第一行。用第一行的ID号进行select
然后更新是可以的但是修改其它行就不行了
execute; 但是一点效果也没有。用post.最起码我界面上变了。虽然再查询就恢复。用update直接变都不变。
可以先确定ApplyUpdates返回值是多少,如果大于0,那么就需要中间层的设置了.