DBGrid在新增資料後,無法馬上顯示? |
尚未結案
|
b7307024
一般會員 發表:9 回覆:21 積分:6 註冊:2005-07-31 發送簡訊給我 |
各位大大好!小弟來麻煩各位了!我寫了個程式,內容是做東西被借出的動作!
在我依財產編號搜尋到資料後,按借出的按鈕,結果DBGrid理所查詢到的資料就不見了
而我再重開啟程式執行查詢剛剛借出的資料,在欄位裡是有顯示"借出中",可是我是希望
可以變成我按借出按鈕後,即可在DBGrid裡看到該筆資料顯示"借出中",請各位先進教導
謝謝!下列是寫在該按鈕的程式碼:
procedure TForm1.Button1Click(Sender: TObject);
begin
If ComboBox1.Text='財產編號' Then
begin
MyQuery1.SQL.Text:='Update assets SET status=''借出中'' WHERE asset_id=''' Edit1.Text '''';
Edit2.Text:=MyQuery1.SQL.Text;
MyQuery1.Execute;
end
Else If ComboBox1.Text='財產名稱' Then
begin
MyQuery1.SQL.Text:='Update assets SET status=''借出中'' WHERE asset_name=''' Edit1.Text '''';
Edit2.Text:=MyQuery1.SQL.Text;
MyQuery1.Execute;
end
end;
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
您好﹗ 如果DBGrid是連接到MyQuery1的話﹐請改成如下試試﹕
procedure TForm1.Button1Click(Sender: TObject); begin If ComboBox1.Text='財產編號' Then MyQuery1.SQL.Text:='Update assets SET status=''借出中'' WHERE asset_id='''+Edit1.Text+'''' Else If ComboBox1.Text='財產名稱' Then MyQuery1.SQL.Text:='Update assets SET status=''借出中'' WHERE asset_name='''+Edit1.Text+''''; Edit2.Text:=MyQuery1.SQL.Text; MyQuery1.Execute; MyQuery1.Close; MyQuery1.SQL.Clear; MyQuery1.SQL.Add('Select * From assets'); MyQuery1.Open; MyQuery1.Locate(ComboBox1.Text, Edit1.Text, [loCaseInsensitive]); end;================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
------
忻晟 |
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
引言: 各位大大好!小弟來麻煩各位了!我寫了個程式,內容是做東西被借出的動作! 在我依財產編號搜尋到資料後,按借出的按鈕,結果DBGrid理所查詢到的資料就不見了 而我再重開啟程式執行查詢剛剛借出的資料,在欄位裡是有顯示"借出中",可是我是希望 可以變成我按借出按鈕後,即可在DBGrid裡看到該筆資料顯示"借出中",請各位先進教導 謝謝!下列是寫在該按鈕的程式碼: procedure TForm1.Button1Click(Sender: TObject); begin If ComboBox1.Text='財產編號' Then begin MyQuery1.SQL.Text:='Update assets SET status=''借出中'' WHERE asset_id=''' Edit1.Text ''''; Edit2.Text:=MyQuery1.SQL.Text; MyQuery1.Execute; end Else If ComboBox1.Text='財產名稱' Then begin MyQuery1.SQL.Text:='Update assets SET status=''借出中'' WHERE asset_name=''' Edit1.Text ''''; Edit2.Text:=MyQuery1.SQL.Text; MyQuery1.Execute; end end;不知道你在"財產編號搜尋"是如何下SQL的?是否與update共用同一個query, 還是查詢是一組query, 更新是一組query 你試著在借出後下 DBGRID1.ReFresh更新即可! |
b7307024
一般會員 發表:9 回覆:21 積分:6 註冊:2005-07-31 發送簡訊給我 |
P.D.大大您好!我是查詢一個SQL,借出一個SQL,使用的是同一個DBGrid。而我照大大說的,加了DBGRID1.ReFresh,我改的方法如下:
procedure TForm1.Button1Click(Sender: TObject);
begin
If ComboBox1.Text='財產編號' Then
begin
MyQuery1.SQL.Text:='Update assets SET status=''借出中'' WHERE asset_id=''' Edit1.Text '''';
Edit2.Text:=MyQuery1.SQL.Text;
MyQuery1.Execute;
DBGrid1.Refresh;
end
Else If ComboBox1.Text='財產名稱' Then
begin
MyQuery1.SQL.Text:='Update assets SET status=''借出中'' WHERE asset_name=''' Edit1.Text '''';
Edit2.Text:=MyQuery1.SQL.Text;
MyQuery1.Execute;
DBGrid1.Refresh;
end end; 不知道對不對,而我有想要加在end;的上面,可是不能執行,請大大教導!
|
b7307024
一般會員 發表:9 回覆:21 積分:6 註冊:2005-07-31 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |