Makale numarası: 140309 - Son Gözden Geçirme: 09 Aralık 2003 Salı - Gözden geçirme: 2.0

Hata: 16-bit ve 32-bit Recordset güncelleştirme hatası farklıdır.

Sistem İpucuBu makale, kullandığınızdan farklı bir işletim sistemine yöneliktir. Sizinle ilgili olmayabilecek makale içeriği devre dışı bırakıldı.

Bu Sayfada

Hepsini aç | Hepsini kapa

Belirtiler

Bir recordset, Visual Basic 16-bit ve 32-bit Visual Basic için görüntülenen hata iletisi Update yöntemi çalışan olduğunda tamamen farklı. Ancak, hatanın nedenini aynıdır. AddNew veya Edit yöntemi denemeden önce bir kayda değişiklikleri kaydetmek için kullandığınız olmadı.

16-Bit hatası

Çalışma zamanı hatası '3426':
Eylemi, ilişkili bir nesne tarafından iptal edildi.

32-Bit hatası

Çalışma zamanı hatası '3020':
Güncelleştirme veya AddNew veya Edit olmaksızın CancelUpdate.

Neden

Gerçekte bir Jet sürüm 2.5 iletisiyle 16-bit hata iletisidir.

Pratik Çözüm

Geçici çözüm, bu hata, a?a??da gösterildi?i gibi bir kayıt kümesine değişiklikleri kaydetmek için önce Update yöntemi önce <a2>düzenleme</a2> yöntemi kullanın:
   Data1.RecordSet.Edit
   Data1.RecordSet.Update
				

Durum

Microsoft Visual Basic 4.0 16-bit sürümünün bir hata olması için onaylamıştır. Biz bu sorun üzerinde araştırma ve burada yeni bilgiler kullanılabilir olduğunda Microsoft Bilgi Bankası'ndaki deftere nakleder.

Daha fazla bilgi

Visual Basic 4.0 16-bit hata yeniden oluşturma adımları

  1. 16-Bit Visual Basic 4.0'ı başlatın veya zaten çalışıyorsa, Dosya menüsünden Yeni Project'i tıklatın.
  2. Form1 formdaki veri denetim yerleştirin.
  3. Veri denetimin veritabanı adı özelliği için Biblio.mdb ayarlayın.
  4. Veri denetimin RecordSource özelliği, yazarlar için ayarlayın.
  5. Bir TextBox denetimine Form1 forma ekleyin. Ilk TextBox ayarlamak denetimin DataSource özelliği Veri1 ve sonra set the DataField özelliği yazarlar için.
  6. Bir komut düğmesi Form1 forma ekleyin.
  7. Aşağıdaki kod örneği, Form1 kod penceresine kopyalama:
           Private Sub Command1_Click()
              'To prevent the bug, uncomment the next line
              'Data1.RecordSet.Edit
              Data1.RecordSet.Update
           End Sub
    						
  8. F5 tuşuna basın veya bir programı başlatmak için Başlat menüsünde Çalıştır'ı tıklatın.
  9. Metin, metin kutusuna girin.
  10. Komut düğmesini tıklatın. Aşağıdaki hata iletisini Microsoft Visual Basic iletişim kutusunda görüntülenir:
    Çalışma zamanı hatası '3426':
    Eylemi, ilişkili bir nesne tarafından iptal edildi.
    Iletişim kutusunu kapatmak ve program sona erdirmek için <a2>Son</a2> düğmesini tıklatın.
  11. Projeyi kaydedin. Proje, 32 bit hata yeniden oluşturmak için kullanılabilir.

Visual Basic 4.0 32 bit hata yeniden oluşturma adımları

  1. 32-Bit Visual Basic 4.0 başlatın veya zaten çalışıyorsa, Dosya menüsünden Aç Project'i tıklatın.
  2. Sadece Yukarıdaki 12. adımda kaydettiğiniz projeyi açın.
  3. F5 tuşuna basın veya bir programı başlatmak için Başlat menüsünde Çalıştır'ı tıklatın.
  4. Metin, metin kutusuna girin.
  5. Komut düğmesini tıklatın. Aşağıdaki hata iletisini, Microsoft Visual Basic</a1> iletişim kutusunda görüntülenir:
    Çalışma zamanı hatası '3020':
    Güncelleştirme veya AddNew veya Edit olmaksızın CancelUpdate.
    Iletişim kutusunu kapatmak ve program sona erdirmek için <a2>Son</a2> düğmesini tıklatın.

Referanslar

Visual Basic 4.0 hata iletileri hakkında ek bilgi için lütfen Microsoft Knowledge Base'de aşağıdaki makaleye bakın:
136250  (http://support.microsoft.com/kb/136250/EN-US/ ) LONG: Visual Basic 4.0 yakalanabilir bir hata listesi

Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Visual Basic 4.0 Standard Edition
  • Microsoft Visual Basic 4.0 Professional Edition
  • Microsoft Visual Basic 4.0 Professional Edition
  • Microsoft Visual Basic 4.0 16-bit Enterprise Edition
  • Microsoft Visual Basic 4.0 32-Bit Enterprise Edition
Anahtar Kelimeler: 
kbmt kbbug kbdatabase KB140309 KbMttr
Otomatik TercümeOtomatik Tercüme
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:140309  (http://support.microsoft.com/kb/140309/en-us/ )