如何在DataGrid中刪除資料和編輯資料,在回寫到資料庫中? |
缺席
|
stevenyehs
一般會員 發表:12 回覆:11 積分:4 註冊:2004-06-09 發送簡訊給我 |
我用TQuery和TDataGrid元件和TUpdateSQL
來新增資料;資料庫為Oracle9i
TQuery:的屬性CachedUpdates=True,UpdateObject=UpdateSqlSet(這是我元件的名字)
TDataGrid的Options屬性則幾乎都開啟了.
TQuery(qrSet)的SQL為"SELECT set_no,seq_no,seq_name,set_num,set_mark,set_name FROM hr_set where s et_no=:setno ORDER BY set_no,seq_no"
UpdateSqlSet中DeleteSql為"Delete from Hr_set Where set_no=:set_no and seq_no=:seq_no"
我想要可以直接在DataGrid中刪除資料並寫入資料庫,
寫入資料庫時就發生錯誤訊息!如圖:
以下我把我的程式碼放上來
procedure TfmSystemSet.FormCreate(Sender: TObject);
begin
qrSet.Close;
qrSet.ParamByName('setno').AsString:='02';
qrSet.Open;
qrSet.Edit;
end;
//這一段是在編輯完後按下來做存入資料庫的動作!
procedure TfmSystemSet.btnSaveClick(Sender: TObject);
begin
try
DBEditSetNo.Text:=comboBoxNo.Text;
qrSet.Post;
qrSet.ApplyUpdates;
qrSet.CommitUpdates;
qrSet.Edit;
except
qrSet.CancelUpdates;
end;
end;
//這是按下新增鈕後,會新增一行空白列
procedure TfmSystemSet.btnNewClick(Sender: TObject);
begin
qrSet.Append;
end;
//在DataGrid中點選後,按下刪除鈕,這是刪除的功能
procedure TfmSystemSet.btnDelClick(Sender: TObject);
begin
try
qrSet.Delete;
qrSet.ApplyUpdates; //到這行就出現錯誤了
qrSet.CommitUpdates;
qrSet.Edit;
except
qrSet.CancelUpdates;
end;
end;
請各位大大幫忙...謝謝!
發表人 - stevenyehs 於 2005/12/13 14:44:44
------
Delphi 初學者 |
shioulo
一般會員 發表:1 回覆:5 積分:1 註冊:2002-05-30 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |