全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1393
推到 Plurk!
推到 Facebook!

将BatchUpdate之前挂起的资料显示在DBGrid中?

尚未結案
xxiaowang
中階會員


發表:51
回覆:75
積分:55
註冊:2005-01-26

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-11-08 16:01:18 IP:219.133.xxx.xxx 未訂閱
看了论坛上相关ADOQuery的BatchUpdate的贴子。 假如我的资料不是在DBGrid中一笔一笔输入, 而是用代码回圈指定。 请问在ADOQuery的BatchUpdate之前,怎样将这些挂起的资料显示在DBGrid中? 谢谢! 唵嘛呢呗咪吽
l630521
資深會員


發表:15
回覆:349
積分:372
註冊:2003-02-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-11-08 16:28:16 IP:203.73.xxx.xxx 未訂閱
你的意思是在ADOQuery未執行BatchUpdate之前把你編修的資料內容顯示在DBGrid上嗎?如果是的話,請將ADOQuery.LockType := ltBatchOptimistic就可以了! Ian
xxiaowang
中階會員


發表:51
回覆:75
積分:55
註冊:2005-01-26

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-11-08 16:50:14 IP:219.133.xxx.xxx 未訂閱
Hi,l630521兄, 我已设置ADOQuery.LockType := ltBatchOptimistic,为了清楚说明问题,我show出例码:
 
 Procedure TForm1.BtnNewRecordClick(Sender:Tobject);
 var
  i:integer;
 begin
  for i:=1 to 10 do 
  begin
   AdoQuery1.insert;
   AdoQuery1.fieldbyname('xxx').asstring:='xxx';
   AdoQuery1.fieldbyname('yyy').asstring:='yyy';
   AdoQuery1.post;
  end;
  //在这里将上面新添加但未update的资料show在DBGrid1中,
       //代码怎么写.
 end;     Procedure Tform1.BtnBUClick(Sender:TObject);
 begin
  ADOQuery1.UpdateBatch(arAll);
 end;
唵嘛呢呗咪吽
l630521
資深會員


發表:15
回覆:349
積分:372
註冊:2003-02-17

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-11-08 17:09:20 IP:211.74.xxx.xxx 未訂閱
DBGrid本身是data-aware元件,如果你有放TDataSource,並將DataSource1.DataSet := ADOQuery1; DBGrid1.DataSource := DataSource1; 這樣子應該做完你的程式碼後,會正常Show在你的DBGrid上才對,不需再做什麼處理! Ian
xxiaowang
中階會員


發表:51
回覆:75
積分:55
註冊:2005-01-26

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-11-08 17:27:44 IP:219.133.xxx.xxx 未訂閱
引言: DBGrid本身是data-aware元件,如果你有放TDataSource,並將 DataSource1.DataSet := ADOQuery1; DBGrid1.DataSource := DataSource1; 這樣子應該做完你的程式碼後,會正常Show在你的DBGrid上才對,不需再做什麼處理!
我正是如l630521兄所说而设置,但不能显示。刷新dataset也没用。 唵嘛呢呗咪吽
l630521
資深會員


發表:15
回覆:349
積分:372
註冊:2003-02-17

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-11-08 17:54:03 IP:211.74.xxx.xxx 未訂閱
那是不是你有執行ADOQuery1.DisableControls; 在新增完後沒有執行ADOQuery1.EnableControls; 這樣就會造成你所編修的資料無法在DBGrid上顯示! Ian
xxiaowang
中階會員


發表:51
回覆:75
積分:55
註冊:2005-01-26

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-11-09 08:19:05 IP:219.133.xxx.xxx 未訂閱
谢谢l630521兄,问题已解决。 原来是我设置了ADOQuery1的DataSource,指向另一个AdoQuery,取消了设置就可以了。 我是想在主从表做一个联接的,现在看来要写代码了。 唵嘛呢呗咪吽
系統時間:2024-06-26 23:57:21
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!