S
sydan
Unregistered / Unconfirmed
GUEST, unregistred user!
用Ado調用Access2000的數據表后,怎樣處理它的OnPostError事件中的主鍵值重復值輸入錯誤呢? 大富翁的高手呢?難道大富翁沒有高手了嗎?我的問題怎麼還沒有人來幫忙解決啊,還一直在等待中呢!版主啊,你一定要來救救小弟啊!!! (50分)<br />我知道用BDE的DB表時可以通過EDBEngineError異常類可以訪問它的Errors數組來獲得當前
的錯誤代碼.如果是eKeyViol的話,就肯定是重復輸入主鍵值字段的內容!!
我現在就想通用ADO操作Access表,且也想AdoTable的OnPostError來檢測是否有重復值,但是
就出現了ADO中我就不清楚它的錯誤類!ODBC呢??我也不清楚!
您能將下面的表改成Access2000的表,並將table改用Ado來操作嗎?
如果是BDE的DB表就可以這樣操作了!如果要參考的話可以到
(C:/Program Files/Borland/Delphi6/Demos/Db/Dberrors)
======================================================
procedure TDM.CustomerPostError(DataSet: TDataSet;
E: EDatabaseError; var Action: TDataAction);
begin
if (E is EDBEngineError) then
if (E as EDBEngineError).Errors[0].Errorcode = eKeyViol then
begin
MessageDlg('Unable to post: Duplicate Customer ID.', mtWarning, [mbOK], 0);
Abort;
end;
end;
的錯誤代碼.如果是eKeyViol的話,就肯定是重復輸入主鍵值字段的內容!!
我現在就想通用ADO操作Access表,且也想AdoTable的OnPostError來檢測是否有重復值,但是
就出現了ADO中我就不清楚它的錯誤類!ODBC呢??我也不清楚!
您能將下面的表改成Access2000的表,並將table改用Ado來操作嗎?
如果是BDE的DB表就可以這樣操作了!如果要參考的話可以到
(C:/Program Files/Borland/Delphi6/Demos/Db/Dberrors)
======================================================
procedure TDM.CustomerPostError(DataSet: TDataSet;
E: EDatabaseError; var Action: TDataAction);
begin
if (E is EDBEngineError) then
if (E as EDBEngineError).Errors[0].Errorcode = eKeyViol then
begin
MessageDlg('Unable to post: Duplicate Customer ID.', mtWarning, [mbOK], 0);
Abort;
end;
end;