有关资料移动 |
答題得分者是:cashxin2002
|
ntjrr
高階會員 ![]() ![]() ![]() ![]() 發表:240 回覆:312 積分:110 註冊:2005-04-24 發送簡訊給我 |
|
hagar
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
您好, 您不都已經寫出來了嗎?
可用兩個 Query
一個去 Select 符合 Edit 條件的 record
另一個 Query 用來 Insert 至另一個資料表
begin // Select 符合條件的值 ADOQuery1.Close; ADOQuery1.SQL.Text := 'Select * From Table1 Where Field1 = :Field1'; ADOQuery1.Parameters.ParamValues['Field1'] := Edit1.Text; ADOQuery1.Open; // Insert 到另一資料表 ADOQuery2.Close; ADOQuery2.SQL.Text := 'Insert Into Table2 (Field1, Field2) Values (:Field1, :Field2)'; while not ADOQuery1.Eof do begin ADOQuery2.Parameters.ParamValues['Field1'] := ADOQuery1.FieldByName('Field1').AsString; ADOQuery2.Parameters.ParamValues['Field2'] := ADOQuery1.FieldByName('Field2').AsString; ADOQuery2.ExecSQL; ADOQuery1.Delete; // 刪除原資料表中所 select 出來的 record end; end;-- hagar. 發表人 - hagar 於 2005/06/04 09:15:27 |
ntjrr
高階會員 ![]() ![]() ![]() ![]() 發表:240 回覆:312 積分:110 註冊:2005-04-24 發送簡訊給我 |
|
cashxin2002
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
ntjrr
高階會員 ![]() ![]() ![]() ![]() 發表:240 回覆:312 積分:110 註冊:2005-04-24 發送簡訊給我 |
|
cashxin2002
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
您好﹗ 您的要求中有個小小的問題﹐就是如果查詢出的記錄是多筆的﹐以下的方法在MessageDlg對話框中顯示出的票据號和姓名是第一筆的記錄﹐如果要取消顯示票据號和姓名的話﹐請使用MessageDlg句下的紅色部分代替即可此句即可﹒
試試這樣﹕
Var Str1, Str2: String; begin ADOQuery1.Close; ADOQuery1.SQL.Text := 'Select * From Table1 Where Field1 = :Field1'; ADOQuery1.Parameters.ParamValues['Field1'] := Edit1.Text; ADOQuery1.Open; Str1 := ADOQuery1.FieldByName('Field1').AsString; Str2 := ADOQuery1.FieldByName('Field2').AsString; if MessageDlg('您确定要刪除票据號('+Str1+')﹐姓名('+Str2+')的收据嗎﹖', mtConfirmation, [mbYes, mbNo], 0) = mrYes then //if MessageDlg('您确定要刪除票据號﹖', mtConfiration, [mbYes, mbNo], 0) = mrYes then begin try ADOQuery2.Close; ADOQuery2.SQL.Text := 'Insert Into Table2 (Field1, Field2) Values (:Field1, :Field2)'; while not ADOQuery1.Eof do begin ADOQuery2.Parameters.ParamValues['Field1'] := ADOQuery1.FieldByName('Field1').AsString; ADOQuery2.Parameters.ParamValues['Field2'] := ADOQuery1.FieldByName('Field2').AsString; ADOQuery2.ExecSQL; ADOQuery1.Delete; end; ShowMessage('操作成功'); Except ShowMessage('操作不成功') end; end; end;=================================
------
忻晟 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |