Düzeltme: Microsoft Jet'te "Nesne geçersiz veya artık Ayarla" hata

Makale çevirileri Makale çevirileri
Makale numarası: 304536 - Bu makalenin geçerli olduğu ürünleri görün.
Hepsini aç | Hepsini kapa

Belirtiler

Açmadan ve bağlantıları veya kayıt kümeleri, Jet için Microsoft ODBC sürücüsü için Access veya Microsoft OLE DB sağlayıcı kullanarak, aşağıdaki hata bildirilebilir:
Set nesne geçersiz veya artık.
Daha fazla kayıt kümeleri veya bağlantılar aynı işleminden sonra bu hata, açılabilir.

Istemci uygulamasına bildirdi diğer olası hata iletileri şunlardır:
Çok sayıda tablo açın.
Daha fazla tablo açılamıyor.

Çözüm

Bu sorunu gidermek için <a0></a0>, en son Microsoft Jet 4.0 hizmet paketini 6'yı yükleyin. Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
239114Nasıl yapılır:'ı Microsoft Jet 4.0 veritabanı altyapısı için en son hizmet paketini elde

Durum

Microsoft, bu makalenin başında listelenen Microsoft ürünlerinde bir sorun olduğunu onaylamıştır. Bu sorun, Jet 4.0 Service Pack 6 (SP6) giderilmiştir.

Daha fazla bilgi

Sorunu yeniden oluşturmak için <a0></a0>, aşağıdaki Microsoft Visual Basic for Applications (VBA) kodunu çalıştırın:
Public Sub Jet_TableID_Repro()
Dim conn As ADODB.Connection
Dim cmd As ADODB.Command
Dim rs As ADODB.recordset
Dim i As Long
    
    Set conn = New ADODB.Connection
    ' Modify this connection string to point to some blank database.
    conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\YourTestDatabase.mdb;"
    
    ' Drop and re-create test query.
    On Error Resume Next
    conn.Execute "drop procedure sp_param_test", , adExecuteNoRecords
    On Error GoTo 0
    conn.Execute "create procedure sp_param_test as " & _
                 "parameters iInput Long; " & _
                 "select iInput as iOutput;", , adExecuteNoRecords
    
    For i = 1 To 10000

        ' Code should fail at around 2000-3000 iterations.
        Set rs = New ADODB.recordset
        Set cmd = New ADODB.Command
        Set cmd.ActiveConnection = conn
        cmd.CommandType = adCmdStoredProc
        cmd.CommandText = "sp_param_test"
        cmd.Parameters.Append cmd.CreateParameter("iInput", adInteger)
        cmd.Parameters(0).value = 12

        ' This will fail at around 2000-3000 iterations.
        rs.Open cmd, , adOpenKeyset, adLockOptimistic
        Set cmd = Nothing
        Debug.Print i
        DoEvents
        rs.Close
        Set rs = Nothing

    Next i

End Sub
				

Özellikler

Makale numarası: 304536 - Last Review: 26 Eylül 2005 Pazartesi - Gözden geçirme: 2.3
Bu makaledeki bilginin uygulandığı durum:
  • Access 4.0 için Microsoft Open Database Connectivity Sürücüsü
  • Microsoft OLE DB Provider for Jet 4.0
Anahtar Kelimeler: 
kbmt kbhotfixserver kbqfe kbjet kbprb kbqfe KB304536 KbMttr
Machine-translated Article
Ö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:304536
Kullanım Dışı Bilgi Bankası İçeriği Yasal Uyarı
Bu makale, Microsoft'un artık destek sağlamadığı ürünler ile ilgili olarak yazılmıştır. Bu nedenle, bu makale "olduğu gibi" sağlanmıştır ve bundan sonra güncelleştirilmeyecektir.

Geri Bildirim Ver

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com