Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    24

    Errore ADODB.Recordset error '800a0cb3

    Salve, ho eseugito il seguente script preso da un manuale ASP da HTML.it, che è il seguente:

    <html>
    <head>
    <title>Musica da Discoteca</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body bgcolor="#FFFFFF" text="#000000">
    <center>
    <TABLE border="0" width="400">
    <TR bgcolor="#000000">
    <TD width="25%"><center><font color="#FFFFFF">Id</font></center></TD>
    <TD width="25%"><center><font color="#FFFFFF">Titolo Canzone</font></center></TD>
    <TD width="25%"><center><font color="#FFFFFF">Dee Jay</font></center></TD>
    <TD width="25%"><center><font color="#FFFFFF">Durata (Sec)</font></center></TD>
    </TR>

    <%
    ' Apertura del Database e creazione recordSet
    dim strCode
    strCode="innovatel"
    dim intVolta
    intVolta="0"
    Set Conn=Server.CreateObject("ADODB.Connection")
    strConn="driver={Microsoft Access Driver (*.mdb)}; "
    strConn=strConn & " DBQ=" & Server.MapPath("musica.mdb")
    strConn=strConn & ";pwd=" & strCode
    Conn.Open strConn

    sql = "SELECT * FROM canzoni"
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3

    ' Ordinamento in base al nome del Dee Jay
    rs.sort = "deejay"

    'Mostro a video il RecordSet ordinato
    do while not(rs.eof)
    if intVolta="1" then
    intVolta="0"
    intTesto="#00FF99"
    intSfondo="#FFFF00"
    else
    intVolta="1"
    intTesto="#FFFF99"
    intSfondo="#33CCFF"
    end if
    %>
    <TR bgcolor="<%=intSfondo%>">
    <TD width="25%"><%=rs(0)%></TD>
    <TD width="25%"><%=rs(1)%></TD>
    <TD width="25%"><%=rs(2)%></TD>
    <TD width="25%"><%=rs(3)%></TD>
    </TR>
    <%
    rs.movenext
    loop
    ' Chiudo il RecordSet ed il relativo database
    rs.Close
    set rs = Nothing
    conn.Close
    set conn = Nothing
    %>
    </TABLE>
    </center>
    </body>
    </html>

    ed ottengo il seguente errore:
    ADODB.Recordset error '800a0cb3'

    Il provider corrente non supporta le interfacce necessarie per l'ordinamento o il filtraggio.

    /prove1/musica.asp, riga 34 --> rs.sort = "deejay"
    ma se faccio l'interrogazione del db col seguente codice sql (ommettendo il metodo sort per l'ordinamento dell'oggetto Recordset)
    sql = "SELECT * FROM canzoni ORDER BY deejay", naturalmente non ottengo alcun tipo di errore. Quindi, da cose dipende quel errore utilizzando il metodo sort? Ringrazio anticipatamente per l'aiuto! Buona pasqua a tutti

  2. #2

    Re: Errore ADODB.Recordset error '800a0cb3

    Originariamente inviato da ramaiato
    Salve, ho eseugito il seguente script preso da un manuale ASP da HTML.it, che è il seguente:

    <html>
    <head>
    <title>Musica da Discoteca</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body bgcolor="#FFFFFF" text="#000000">
    <center>
    <TABLE border="0" width="400">
    <TR bgcolor="#000000">
    <TD width="25%"><center><font color="#FFFFFF">Id</font></center></TD>
    <TD width="25%"><center><font color="#FFFFFF">Titolo Canzone</font></center></TD>
    <TD width="25%"><center><font color="#FFFFFF">Dee Jay</font></center></TD>
    <TD width="25%"><center><font color="#FFFFFF">Durata (Sec)</font></center></TD>
    </TR>

    <%
    ' Apertura del Database e creazione recordSet
    dim strCode
    strCode="innovatel"
    dim intVolta
    intVolta="0"
    Set Conn=Server.CreateObject("ADODB.Connection")
    strConn="driver={Microsoft Access Driver (*.mdb)}; "
    strConn=strConn & " DBQ=" & Server.MapPath("musica.mdb")
    strConn=strConn & ";pwd=" & strCode
    Conn.Open strConn

    sql = "SELECT * FROM canzoni"
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3

    ' Ordinamento in base al nome del Dee Jay
    rs.sort = "deejay"

    'Mostro a video il RecordSet ordinato
    do while not(rs.eof)
    if intVolta="1" then
    intVolta="0"
    intTesto="#00FF99"
    intSfondo="#FFFF00"
    else
    intVolta="1"
    intTesto="#FFFF99"
    intSfondo="#33CCFF"
    end if
    %>
    <TR bgcolor="<%=intSfondo%>">
    <TD width="25%"><%=rs(0)%></TD>
    <TD width="25%"><%=rs(1)%></TD>
    <TD width="25%"><%=rs(2)%></TD>
    <TD width="25%"><%=rs(3)%></TD>
    </TR>
    <%
    rs.movenext
    loop
    ' Chiudo il RecordSet ed il relativo database
    rs.Close
    set rs = Nothing
    conn.Close
    set conn = Nothing
    %>
    </TABLE>
    </center>
    </body>
    </html>

    ed ottengo il seguente errore:
    ADODB.Recordset error '800a0cb3'

    Il provider corrente non supporta le interfacce necessarie per l'ordinamento o il filtraggio.

    /prove1/musica.asp, riga 34 --> rs.sort = "deejay"
    ma se faccio l'interrogazione del db col seguente codice sql (ommettendo il metodo sort per l'ordinamento dell'oggetto Recordset)
    sql = "SELECT * FROM canzoni ORDER BY deejay", naturalmente non ottengo alcun tipo di errore. Quindi, da cose dipende quel errore utilizzando il metodo sort? Ringrazio anticipatamente per l'aiuto! Buona pasqua a tutti
    Il provider non supporta il sort, non puoi farlo così

    sql = "SELECT * FROM canzoni order by deejay"

  3. #3
    strano prova a cambiare la stringa di connessione ad access con oled prendendola da www.connectionstrings.com, magari è il driver che ha qualche problema.. buh

    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    24
    Santino, ti ringrazio tantissimo per l'indicazione che mi hai dato... Purtroppo non sono riusciuto a risolvere il problema. Forse non è un problema di driver, bensì è il motore ASP situato all'interno di IIS 7 che non riconosce il metodo sort. Cmq finora utilizzando codice SQL per le query su db, non ho mai riscontrato alcun tipo di problema.. Ad ogni modo da ora in poi cercherò di usare mysql anzichè access.. Grazie ancora.. Ciao :-)

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    24

    Risolto

    Facendo riferimento al seguente sito: http://www.stardeveloper.com/article...070701&page=1, il problema l'ho risolto nel seguente modo:

    <% Option Explicit %>
    <%
    Sub ShowRec(qc1, qc2, qc3, qc4)
    Response.Write "<table width=500 border=0 " & _
    "cellpadding=0 cellspacing=0" & vbcrlf
    Response.Write "<tr>"
    Response.Write "<td width=100>"

    Response.Write qc1
    Response.Write "</td><td width=200>"
    Response.Write qc2
    Response.Write "</td><td width=200>"
    Response.Write qc3
    Response.Write "</td><td width=200>"
    Response.Write qc4
    Response.Write "</td></tr></table>"
    End Sub

    ' Putting the values of ADO constants
    Const adCmdTableDirect = &H0200
    Const adLockReadOnly = 1
    Const adOpenStatic = 1
    Const adUseClient = 3
    %>

    <html>
    <head>
    <style>
    body { font-family : Verdana; font-size : 8pt; }
    </style>
    </head>
    <body>
    <%
    Dim connStr
    connStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _
    Server.MapPath("musica.mdb")

    Dim rs
    Set rs = Server.CreateObject("ADODB.Recordset")

    rs.CursorLocation = adUseClient
    rs.Open "canzoni", connStr, adOpenStatic, adLockReadOnly, adCmdTableDirect


    ' Moving the record pointer to the beginning

    'Now sorting according to the field "name"
    rs.Sort = "deejay"
    Response.Write "

    Sorting by field ""deejay"" :

    "
    Response.Write vbcrlf
    While Not rs.EOF
    ShowRec rs("id"), rs("titolo_canzone"), rs("deejay"), rs("durata")
    rs.MoveNext
    Wend
    ' Moving the record pointer to the beginning

    rs.Close
    Set rs = Nothing
    %>

    Così funziona

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    24

    Lo script al completo

    <% Option Explicit %>

    <html>
    <head>
    <title>Musica da Discoteca</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body bgcolor="#FFFFFF" text="#000000">
    <center>
    <TABLE border="0" width="400">
    <TR bgcolor="#000000">
    <TD width="25%"><center><font color="#FFFFFF">Id</font></center></TD>
    <TD width="25%"><center><font color="#FFFFFF">Titolo Canzone</font></center></TD>
    <TD width="25%"><center><font color="#FFFFFF">Dee Jay</font></center></TD>
    <TD width="25%"><center><font color="#FFFFFF">Durata (Sec)</font></center></TD>
    </TR>


    <%
    dim intVolta,intTesto, intSfondo
    intVolta="0"
    Sub ShowRec(qc1, qc2, qc3, qc4, intSfondo)

    response.Write "<TR bgcolor="&intSfondo&">"
    response.Write "<TD width='25%'>"&qc1&"</TD>"
    response.Write "<TD width='25%'>"&qc2&"</TD>"
    response.Write "<TD width='25%'>"&qc3&"</TD>"
    response.Write "<TD width='25%'>"&qc4&"</TD>"
    response.Write "</TR>"
    End Sub

    ' Putting the values of ADO constants
    'Const adCmdTableDirect = &H0200
    Const adLockReadOnly = 1
    Const adOpenStatic = 1
    Const adUseClient = 3


    Dim connStr
    connStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _
    Server.MapPath("musica.mdb")

    Dim rs
    Set rs = Server.CreateObject("ADODB.Recordset")

    rs.CursorLocation = adUseClient
    rs.Open "canzoni", connStr, adOpenStatic, adLockReadOnly 'adCmdTableDirect


    ' Moving the record pointer to the beginning

    'Now sorting according to the field "name"
    rs.Sort = "deejay"

    While Not rs.EOF

    if intVolta="1" then
    intVolta="0"
    IntTesto="#00FF99"
    intSfondo="#FFFF00"
    else
    intVolta="1"
    intTesto="#FFFF99"
    intSfondo="#33CCFF"
    end if

    ShowRec rs("id"), rs("titolo_canzone"), rs("deejay"), rs("durata"), intSfondo
    rs.MoveNext
    Wend
    ' Moving the record pointer to the beginning

    rs.Close
    Set rs = Nothing
    %>

    </TABLE>
    </center>
    </body>
    </html>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.