sanal void Edit( );
atmak ( CDBException, CMemoryException );
Açıklamalar
Geçerli kayıttaki değişiklikler izin vermek için bu üye işlevini çağırın. Düzenlearama sonra doğrudan kendi değerlerini sıfırlayarak alan veri üyeleri değiştirebilir. Daha sonra veri kaynağı üzerinde yaptığınız değişiklikleri kaydetmek için Update üye işlevini çağırdığınızda işlemi tamamlandı.
&Notnbsp; Satır toplu alma uyguladıysanız, düzenlemeçağrılamıyor. Bu başarısız bir iddianın içinde sonuçlanır. Sınıf CRecordset toplu satır verileri güncelleştirmek için bir mekanizma sağlamaz, ancak SQLSetPosodbc API işlevini kullanarak kendi işlevlerinizi yazabilir. Bunu nasıl örneği için bkz: örnek dbfetch. Satır toplu alma hakkında daha fazla bilgi için bkz: yazı Recordset: getiriliyor kayıtları toplu (odbc) Visual c++ Programcı Kılavuzu.
Düzenleme , kayıt kümesinin veri üyeleri değerleri kaydeder. Düzenlearama, değişiklik sonra Düzenle tekrar arama, kayıt değerlerini Düzenle ilk çağrı önce ne olduğunu için geri.
Bazı durumlarda, bir sütun (veri içeren) Null sağlayarak güncelleştirmek isteyebilirsiniz. Bunu yapmak için SetFieldNull sahip bir parametre Null alanı işaretlemek için gerçek aramak; Bu da güncelleştirilecek sütun neden olur. Düz-se bile onun değer değişmedi veri kaynağına yazılacak bir alan isterseniz, SetFieldDirty trueparametre ile çağırın. Alanın Null değeri olsaydı bile bu işleri.
Veri kaynağı hareketleri destekliyorsa, bir hareketin parçası aramak düzenleme yapabilirsiniz. Not düzenleme çağırmadan önce ve recordset açıldıktan sonra CDatabase::BeginTrans çağırmalısınız. Ayrıca CDatabase::CommitTrans çağrı düzenleme işlemi tamamlamak için güncelleştirme çağırmak yerine değildir. Hareketler hakkında daha fazla bilgi için bkz: sınıfın CDatabase.
Geçerli kilitleme moduna bağlı olarak güncelleştirilen kaydın düzenleme tarafından güncelleştirme ya da başka bir kayda gidin arayın veya kilitli olabilir kadar kilitli olabilir yalnızca Düzenle arama sırasında. Sen-ebilmek değişmek SetLockingMode kilitleme modu.
Eğer kaydırma için yeni bir kayıt güncellemeçağırmadan önce geçerli kaydın önceki değerini geri yüklenir. Eğer düzenleme güncelleştirilemeyen bir recordset için arama veya geçerli kayıt yok ise CDBException atılır.
Daha fazla bilgi için bkz: makaleleri Hareket (odbc) ve Recordset: kilitleme kayıtları (odbc) Visual c++ Programcı Kılavuzu.
Örnek
/ / CRecordset::Edit Ör&neğin
/ / Bir kaydı düzenlemek için
/ İlk düzenleme arabellek Set
rsCustSet.Edit ();
/ / Alan veri üye kaydı Düzenle
rsCustSet.m_dwCustID 2795; =
rsCustSet.m_strCustomer = "Jones Mfg";
/ / Son olarak işlem tamamlanamıyor
Eğer (! rsCustSet.Update ())
nbsp; / / Başarısızlık güncellemek için kolu
CRecordset ge&nel bakış |nbsp; Sınıf üyeleri | Hiyerarşi çizelgesi
Ayrıca bkz:nbsp;CRecordset::Update, CRecordset::Add&New, CRecordset::Delete, CRecordset::SetFieldDirty, CRecordset::SetFieldNull, CRecordset::CanUpdate, CRecordset::CanTransact, CRecordset::SetLockingMode