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

    SQL... WHERE .... OR ...

    ERRORE riportato:

    Microsoft JET Database Engine error '80040e14'
    Syntax error (missing operator) in query expression 'codice ='ds213' OR idfilm ='.

    questa è la query SQL:
    codice:
    IF len(codice) > 0 OR len(id) > 0 THEN
    sql = "SELECT * FROM tabella WHERE codice = '"& codice &"' OR idfilm ="& id
    ...
    le variabili le recupero così:
    codice:
    IF len(request.form("codice")) > 0 THEN
    codice = replace(request.form("codice"), "'", "''")
    ELSE
    id = replace(request.form("id"), "'", "''")
    END IF
    In poche parole la query deve prendere il valore da ricercare o dal campo 'codice' o dal campo 'idfilm' quest'ultimo, nel database .mdb, e' tipo contatore.

    Perchè mi dice che manca l'operatore? per l'IDFILM?

    Con l'OR non deve essere presente solo una delle due variabili?

    Grazie

  2. #2
    Da quello che il messaggio di errore ti restituisce, pare che idFilm non arrivi, fatti stampare a video la query e postala qui:

    codice:
    IF len(codice) > 0 OR len(id) > 0 THEN
    sql = "SELECT * FROM tabella WHERE codice = '"& codice &"' OR idfilm = "& id
    response.write(sql)
    response.end
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  3. #3
    Utente di HTML.it L'avatar di albis
    Registrato dal
    May 2002
    Messaggi
    912
    se non ho capito male o è valorizzato codice o id
    ma mai tutti e due insieme

    anzi dal codice che scrivi
    codice:
     
        IF len(request.form("codice")) > 0 THEN
        codice = replace(request.form("codice"), "'", "''")
        ELSE
        id = replace(request.form("id"), "'", "''")
        END IF
    è proprio così
    allora dovresti scrivere
    al posto di
    codice:
     
    IF len(codice) > 0 OR len(id) > 0 THEN
    sql = "SELECT * FROM tabella WHERE codice = '"& codice &"' OR idfilm ="& id
    ...
    codice:
     
    IF len(codice) > 0 OR len(id) > 0 THEN
    IF len(codice) > 0  then
    sql = "SELECT * FROM tabella WHERE codice = '"& codice &"'"
    else
    sql = "SELECT * FROM tabella WHERE idfilm ="& id
    end if
    ...
    Forza la magica ROMA

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684
    Infatti ho creato due query SQl a seconda del valore passatto...

    Grazie per le risposte, avevo risolto... poi posto il codice... oggi ho finito tutto il pannello di amministrazione dell'e-commerce in remoto!!!

    che lavoraccio...

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.