Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 24
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630

    query che non mi funziona

    Carissimi,
    non riesco a capire come mai questa query non mi funziona:
    codice:
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("../../mdb-database/miodb.mdb")
    sql = "SELECT * FROM utenti "
    if request.querystring("categoria") = "001" then
    dat = "001 = 'SI' "
    end if
    if request.querystring("categoria") = "002" then
    dat = "002 = 'SI' "
    end if
    if request.querystring("categoria") = "003" then
    dat = "003 = 'SI' "
    end if
    sql = sql &" WHERE "& dat &" ORDER BY Id"
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, Conn, 3, 3
    L'errore che ricevo è:
    codice:
    Microsoft OLE DB Provider for ODBC Drivers error '80040e07' 
    
    [Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression. 
    
    /public/cate.asp, line 21
    La linea 21 corrisponde a: rs.Open sql, Conn, 3, 3
    Grazie per l'aiuto.
    G.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    nessuno può darmi una mano?

  3. #3
    e che c'hai furia?

    ----------------------------------------------------
    impariamo a fare un po' di debug

    *subito* dopo la composizione della stringa SQL metti

    Response.Write "maGGica SQL...: " & sql
    Response.Flush

    poi posta quello che viene a video
    ----------------------------------------------------

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    l'elaborazione si ferma alla riga 21 cioè:rs.Open sql, Conn, 3, 3
    anche facendo debug inserendo la tua stringa ho sempre l'errore senza altri msg:

    Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

    [Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

    /public/cate.asp, line 21

  5. #5
    ti ho detto come fare debug, non come risolvere. è ovvio che ti dia ancora errore. se fai esattamente come ti ho detto ti stampa anche la stringa

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    ho modificato la query così:

    codice:
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("../../mdb-database/miodb.mdb")
    sql = "SELECT * FROM utenti WHERE 001 = 'SI' ORDER BY Id"
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, Conn, 3, 3 
    Response.Write "maGGica SQL...: " & sql
    Response.Flush
    e ho sempre l'errore all'rs.open sql...

  7. #7
    aridajela. l'errore ce l'avrai sempre finché non sistemi!

    devi mettere le righe che ti ho suggerito *subito* dopo la creazione. tu l'hai messa *dopo* l'esecuzione

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    ecco:
    codice:
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("../../mdb-database/miodb.mdb")
    sql = "SELECT * FROM utenti WHERE 001 = 'SI' ORDER BY Id"
    Response.Write "maGGica SQL...: " & sql
    Response.Flush
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, Conn, 3, 3
    risultato:
    codice:
    maGGica SQL...: SELECT * FROM utenti WHERE 001 = 'SI' ORDER BY Id 
    Microsoft OLE DB Provider for ODBC Drivers error '80040e07' 
    
    [Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression. 
    ...

  9. #9
    ooookkkey

    001 è un campo?

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    SI

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.