Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684

    errore apertura database

    Con la seguente sintassi ho il seguente errore, se nomino il campo "CONTATORE" -> ID_FILM o IDFILM:

    <%
    Dim Conn, rs, strConn
    Set Conn=Server.CreateObject("ADODB.Connection")
    strConn="driver={Microsoft Access Driver (*.mdb)}; "
    strConn=strConn & " DBQ=" & Server.MapPath("database/archivio.mdb")
    Conn.Open strConn
    sql = "SELECT * FROM film order by id DESC"
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3

    do while not (rs.EOF)
    %>


    FILM: <%=rs("film")%></p>


    DISTRIBUTORE: <%=rs("distributore")%></p>


    CAST:</p>


    GENERE:</p>


    PREZZO: <%'=rs("prezzo")%></p>


    DESCRIZIONE: <%'=rs("descrizione")%></p>


    REGIA: <%'=rs("regia")%></p>


    LINGUA: <%'=rs("lingua")%></p>


    DURATA: <%'=rs("durata")%></p>


    CODICE: <%'=rs("codice")%></p>

    <%
    rs.movenext
    loop
    rs.Close
    set rs = Nothing
    Conn.close
    set Conn = Nothing
    %>

    L'errore e' il seguente:
    Tipo di errore:
    Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
    [Microsoft][Driver ODBC Microsoft Access] Parametri insufficienti. Previsto 1.
    /nomedominio/scheda2.asp, line 16

    Se al campo "CONTATORE" assegno come nome solo ID, il tutto viene aperto.

    Come mai?

    Altra cosa. Ho scaricato la guida ASP intermedia. Il tipo di connessione che utilizzo per i database access viene spiegata in questa guida, trovata su questo sito, vorrei chiedervi cosa significa la seguente riga di comando:
    - rs.Open sql, conn ,3,3

    So che viene aperto l'oggetto "rs" preventivamente creato lato server, ma quei ",3,3" cosa sono?

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Sono i cursori per lo spostamento tra i record.
    Non ho capito l'errore che ti restiuisce se cambi nomi al campo contatore.

    Roby

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684
    L'errore, nel caso in cui nomino il campo "IDFILM" o "ID_FILM", e' il seguente:

    Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
    [Microsoft][Driver ODBC Microsoft Access] Parametri insufficienti. Previsto 1.
    /nomedominio/scheda2.asp, line 16

    Nel caso in cui dovessi mettere solo ID, il problema non si verifica, e si apre tranquillamente la lettura dei record.

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Se il campo è contatore, per cambiargli nome devi prima vuotare la tabella.

    Roby

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684
    Non ricordo. Se non erro ho provato piu' volte a creare un nuovo database nominando "IDFILM" il campo "CONTATORE", e' mi ha dato sempre problemi...

    Il problema nasce... visto l'uso che ne devo fare... infatti devo creare tre tabelle relazionate fra loro, ovvero:
    tabelle:
    FILM
    GENERE
    GENERE_FILM

    la tabella GENERE_FILM dovrà contenere gli ID di FILm e GENERE, e preferisco nominare gli ID delle rispettive tabelle con nomi IDFILM e IDGENERE. Provo e ti faccio sapere creando una semplice tabella FILM, con IDFILM campo contatore.

    La lascio vuota (in fase di connesione potrebbe darmi errore?)o la riempo, tipo con tre record?

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Se ne fai una selelct e la tabella è vuota devi testare che il recordset restituisca qualcosa altrimenti è ovvio che dia errore.

    Roby

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684
    OK... riempio con 2 record la tabella e ti faccio sapere... ma se ricordo bene mi dava comunque errore creando da zero una tabella e assegnando quei nomi al campo contatore.

    one moment...

  8. #8

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684
    lo sai che ho commesso un errore grande quanto una casa e non me ne sono accorto... al momento della creazione della query lasciavo ID e non "IDFILM" o "ID_FILM" come il campo presente nel database....

    ora provo... ma sicuramente ora andrà... ho perso una giornata a cavolo, per questa banalità...

    quando sei preso, dalla realizzazione di altre cose, non pensi alle cose piu' semplici e cerchi l'errore dove non c'e'....

    grazie ti faccio sapere,ciao.

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684
    Ok, funziona...

    avevo copiato il codice per la connesione da un'altra pagina asp, che utilizzo (evito di riscriverlo sempre...) ed ho modificato solo il nome dell'archivio e della tabella, tralasciando il nome campo del contatore: infatti uso sempre il nome ID; questa volta invece IDFILM... ecco dove erravo... grazie per le risposte...

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 © 2025 vBulletin Solutions, Inc. All rights reserved.