简体   繁体   中英

OleDbException (0x80004005): Not specified error?

I created a button ( Next ) to navigate in a Table called CHAPTERS ;

My problem is that the button work Two, and sometimes three times. After that I get [Not specified error].

This is my code :

Dim S As Integer = Integer.Parse(Request.QueryString("id"))
Dim RQ As String
Dim DR As OleDbDataReader
RQ = "SELECT ID_C FROM CHAPTRES"
DR = Connexion.lecture(RQ)
While DR.Read
    If DR.GetInt32(0) = S Then
            Exit While
        End If
    End While

    If DR.Read = True Then
        S = DR.GetInt32(0)
        Response.Redirect("Chapitre.aspx?id=" & S)
    Else   
        // End of records (stop reading)
    End If

Thanks.

UPDATES :

This the connecter and lecture functions in my Connexion.vb file :

Imports Microsoft.VisualBasic
Imports System.Data
Imports System.Data.OleDb
Imports System.Data.SqlClient

Public Class Connexion

Public Shared Function conecter() As OleDbConnection
    Dim MyConnexion As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & System.AppDomain.CurrentDomain.BaseDirectory & "/Learning.mdb")
    MyConnexion.Open()
    Return MyConnexion
End Function

Public Shared Function lecture(ByVal requete As String) As OleDbDataReader
    Dim Mycommand As OleDbCommand = conecter().CreateCommand()
    Mycommand.CommandText = requete
    Dim myReader As OleDbDataReader = Mycommand.ExecuteReader()
    Return myReader

End Function

Your problem is probably that you're not closing/disposing your OleDbDataReader. The Response.Redirect call takes you off to another page without closing the open data reader.

Try modifying your last chunk of code to this:

If DR.Read = True Then 
    S = DR.GetInt32(0) 
    DR.Close()
    DR.Dispose()
    Response.Redirect("Chapitre.aspx?id=" & S) 
Else    
    // End of records (stop reading) 
End If 

Update: It would obviously help if you provided more information, like maybe exactly what line of code in this example is throwing the exception.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM