Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2002
    Messaggi
    239

    Scegliere a random un recordset da una tabella del database

    Come si fa lo so ed uso questo metodo
    codice:
    dim aforisma_Max
    	dim aforisma_Casuale
    	sql = "SELECT COUNT(*) FROM Aforismi"
    	Set RS = dbConn.Execute(sql)
    	aforisma_Max = RS(0)
    
    	Randomize()
    	aforisma_Casuale = Int(Rnd() * aforisma_Max)
    
    	sql = "SELECT * FROM Aforismi"
    	Set RS = dbConn.Execute(sql)
    
    	If Not RS.EOF Then
    		RS.MoveFirst
    		RS.Move aforisma_Casuale
    		aforisma = decodifica(RS("aforisma")) & " [" & decodifica(RS("autore")) & "]"
    	Else
    		aforisma = "Nulla"
    	End If
    	
    	RS_evaso.Close
    	Set RS = Nothing
    Però se io cancello un recordset e a random mi va a beccare proprio il recordset inesistente su "RS.Move aforisma_Casuale" mi da un errore (giustamente)

    Come faccio a fargli verificare se la riga esiste e nell'eventualità a fargli ripetere l'operazione?

  2. #2
    codice:
    If Not RS.EOF Then
    		RS.MoveFirst
                	RS.Move aforisma_Casuale
              do until len(RS("aforisma"))>0 
                       RS.Move (aforisma_Casuale-1)
               loop
                 	aforisma = decodifica(RS("aforisma")) & " [" & decodifica(RS("autore")) & "]"
    	Else
    		aforisma = "Nulla"
    	End If

    ...non è il massimo, ma dovrebbe funzionare sempre che almeno il primo aforisma sia sicuramente non vuoto
    E' nato www.lombardiamotori.it

    www.universocase.it: il primo portale italiano di annunci immobiliari gratuiti e autogestiti!

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.