Access'te dizin içeren bir Not alanına büyük miktarda metin girdiğinizde "Çalışma zamanı hatası '3709'"
Orta: Temel makro, kodlama ve birlikte çalışabilirlik becerileri gerektirir.
Bu makale, Microsoft Access veritabanı (.mdb) dosyası veya Microsoft Access veritabanı (.accdb) dosyası için geçerlidir.
Belirtiler
Microsoft Access veritabanında, dizin içeren bir Not alanı oluşturduğunuzda veya otomatik olarak dizine alınan metni içeren bir alan adı oluşturduğunuzda, alana yaklaşık 3450 karakterden fazla karakter içeren metni giremezsiniz. Alana daha fazla metin girmeye veya var olan verileri düzenlemeye çalıştığınızda aşağıdaki hata iletisini alırsınız:
Run-time error '3709':
The search key not found in any record.
Çözüm
Not alanına büyük miktarda metin girmeniz gerekiyorsa, Not alanının dizinini silin. Bunu yapmak için şu adımları izleyin:
Tasarım görünümünde Not alanı olan tabloyu açın.
Görünüm Menüsünde Dizinler'e tıklayın.
Not Microsoft Office Access 2007'de Tasarım sekmesine tıklayın ve ardından Göster/Gizle grubunda Dizinler'e tıklayın.
Not alanının dizinine tıklayın ve ardından silin.
Durum
Microsoft, bu makalenin başında listelenen Microsoft ürünlerinde bunun bir sorun olduğunu onayladı.
Daha fazla bilgi
Not alanları Jet 3.5 ve önceki sürümlerde dizine alınamadığından, bu davranış Microsoft Access'in Microsoft Access 2000 öncesi sürümlerinde oluşmaz.
Access 2003'te davranışı yeniden oluşturma adımları
Yeni bir veritabanında, aşağıdaki özelliklere sahip yeni bir tablo oluşturun ve tablo1 olarak kaydedin:
Table: Table1 ------------------------ Field Name: Id Data Type: AutoNumber Primary Key Field Name: MyCode Data Type: Memo
Tablo1 tablosuna aşağıdaki kaydı ekleyin:
Id MyCode ------------------------------------ 1 This is the Memo test data
Aşağıdaki SQL deyimini kopyalayın, SQL görünümünde yeni bir sorguya yapıştırın ve sorguyu query1 olarak kaydedin:
UPDATE Table1 SET Table1.MyCode = [MyCode] & " " & [MyCode];
Aşağıdaki modülü oluşturun ve Module1'i kaydedin:
Sub TestMemoUpdate() Dim i As Integer Docmd.setwarnings false For i = 1 To 10 Docmd.openquery "Query1" Next i Docmd.setwarnings true End Sub
İşaretçinizi yordamda olacak şekilde yerleştirin. Kodu çalıştırmak için F5 tuşuna basın.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin