CRecordset::Update

CRecordset::Update
virtual BOOL Update();
throw ( CDBException );
返回值:
如果一個記錄更新成功則返回一個非零值;否則如果沒有列改變,則返回值為零。如果沒有記錄被更新,或有多個記錄被更新,則拋出一個異常。對數據源上的其它任何失敗也都將拋出一個異常。
說明:
在調用AddNew或Edit成員函式之後,調用Update成員函式,必須用該調用來完成AddNew或Edit操作。
注意:
如果你已經實現了成組行檢取,你就不能調用Update。這將導致一個異常。雖然類CRecordset不提供更新成組行數據的機制,但是你可以提供使用ODBC API函式SQLSetPos來編寫你自己的函式。如何做到這一點,請參見例子DBFETCH。
AddNew或Edit都準備了一個編輯緩衝區,被增加或被編輯的數據都放在此緩衝區中,等待存入數據源中。Update保存這些數據。只有標記為或檢測為被修改了的那些欄位才被更新。
如果數據源支持事務,你可以使Update調用(以及它的相應的AddNew或Edit調用)成為事務的一部分。
警告:
如果你沒有先調用AddNew或Edit函式就調用Update函式,則Update函式將拋出一個異常。如果應用程式調用AddNew或Edit,則在調用MoveNext之前,或改變記錄集或數據源之前,必須調用Update函式。否則,所做的改變將丟失,並且不給出通知。

相關詞條

熱門詞條

聯絡我們