在即時和批次模式中使用 AddNew
AddNew 方法的行為取決於 Recordset 物件的更新模式,以及您是否傳遞 FieldList 與 Values 引數。
在立即更新模式 (其中在您呼叫 Update 方法之後,提供者會將變更寫入底層資料來源) 中,在不搭配引數的情況下呼叫 AddNew 方法會將 EditMode 屬性設定為 adEditAdd。提供者會在本機快取任何欄位值變更。 呼叫 Update 方法會將新記錄張貼至資料庫,並將 EditMode 屬性重設為 adEditNone。如果您傳遞 FieldList 與 Values 引數,ADO 會立即將新記錄張貼至資料庫 (不需要進行 Update 呼叫);EditMode 屬性值不會變更 (adEditNone)。
在批次更新模式中,在不搭配引數的情況下呼叫 AddNew 方法會將 EditMode 屬性設定為 adEditAdd。 提供者會在本機快取任何欄位值變更。 呼叫 Update 方法會將新記錄新增至目前的 Recordset 並將 EditMode 屬性重設為 adEditNone,但是提供者不會將變更張貼至底層資料庫,直到您呼叫 UpdateBatch 方法為止。 如果您傳遞 FieldList 與 Values 引數,ADO 會將新記錄傳送至提供者以儲存在快取中;您必須呼叫 UpdateBatch 方法來將新記錄張貼至底層資料庫。 如需 Update 與 UpdateBatch 的詳細資訊,請參閱更新和保存資料 (部分機器翻譯)。