Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    385

    Controllo risultato query vuota.

    Salve.
    Ho bisogno di verificare se il risultato di una query (uso ASP e Access) è vuoto oppure no, ovvero se restituisce 0 o 1 record...

    Ecco il codice:
    set Interrogazione = Connessione.Execute ("SELECT MAX(IDPrenotazione) AS MAXID FROM Prenotazioni")
    if 'il risultato della query non è vuoto then
    IDPrenotazione=Interrogazione ("MAXID")+1
    else IDPrenotazione=1
    end if

    Che ci metto nell'if per fare il controllo? O esistono altri sistemi per controllare?

    Grazie!

  2. #2
    codice:
    if not rs.eof then
       'recordset popolato
    else
       'recordset vuoto
    end if
    questa però è una di quelle cose che ogni guida o documentazione spiega... :rollo:
    e che trovi nella metà dei topic in questo forum
    san imente saluta

    * http://simonecingano.it *

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    385
    ma pare che quella funzioni solo se giungi alla fine di un recordset con un loop, altrimenti no!

  4. #4
    no, se il recordset è vuoto sia BOF che EOF sono a TRUE

    se vuoi controllare se il recordset è vuoto puoi usarli insieme

    ma se è il primo controllo che fai PRIMA di un loop ti basta e avanza EOF
    san imente saluta

    * http://simonecingano.it *

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    385
    Si però se vedi il codice che ho postato, la mia query darà o nulla o un valore.

    Quindi io dovrei controllare distinguere questi due casi, mentre credo che se c'è un solo valore già sono a EOF.
    Quindi dovrei dire: se BOF e EOF, allora è vuoto, altrimenti no?

  6. #6
    la MAX *dovrebbe* riportare sempre un record, e se la tabella è vuota riporta NULL. testa quello

  7. #7
    Originariamente inviato da optime
    la MAX *dovrebbe* riportare sempre un record, e se la tabella è vuota riporta NULL. testa quello
    non avevo visto fosse una MAX... mea culpa :rollo:
    san imente saluta

    * http://simonecingano.it *

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    385
    Cioè?

    set Interrogazione = Connessione.Execute ("SELECT MAX(IDPrenotazione) AS MAXID FROM Prenotazioni")
    if MAXID<>NULL then
    IDPrenotazione=Interrogazione ("MAXID")+1
    else IDPrenotazione=1
    end if

    Così?

  9. #9
    ovviamente

    if Interrogazione("MAXID") <> NULL then ...

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.