Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 23
  1. #11
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    1,183

    x pietro

    ho provato il tuo codice

    Dim old As Integer = 0


    Using reader As OleDbDataReader = msole.GetDataReader(gl.StringaConnessioneTest, "select [id] from libro_soci order by [id]")
    Do While (reader.Read)
    Dim x As Integer = CInt(reader("id"))
    If x > (old + 1) Then
    For j As Integer = old + 1 To x - 1
    PrintLn(j)
    Next
    End If
    old = x
    Loop
    End Using


    mi dice

    Compiler Error Message: BC30451: Name 'msole' is not declared.
    (poi magari mi dirà di dichiarare anche gl)

    grazie
    victor
    ----------------------

  2. #12
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    insomma, ti si aiuta, ma se non ci metti del tuo non è possibile andare avanti.

    codice:
    Dim a() As Integer = {1, 2, 5, 6, 10}
    
    Dim old As Integer = 0
    For i As Integer = 0 To a.Count - 1
    	Dim x As Integer = a(i)
    	If x > (old + 1) Then
    		For j As Integer = old + 1 To x - 1
    			Console.WriteLine(j)
    		Next
    	End If
    	old = x
    Next
    Questo è il codice di prova. Il vettore a() fa le veci degli ID nella tabella. Alla fine ottengo la stampa di 3, 4,7,8,9, che sono gli elementi mancanti alla serie 1-10.


    Estrapolando il codice per leggere una tabella ottengo questo
    codice:
    Dim old As Integer = 0
    Using reader As OleDbDataReader = msole.GetDataReader(gl.StringaConnessioneTest, "select [id] from tabella7 order by [id]")
    	Do While (reader.Read)
    		Dim x As Integer = CInt(reader("id"))
    		If x > (old + 1) Then
    			For j As Integer = old + 1 To x - 1
    				PrintLn(j)
    			Next
    		End If
    		old = x
    	Loop
    End Using
    ma non è possibile fare copia-incolla, infatti:

    msole.GetDataReader è una mia funzione. Tu mettici la tua che ti restituisce un OleDbDataReader

    gl.StringaConnessioneTest è una mia funzione. Tu mettici la tua che ti dà la stringa di connessione

    select [id] from tabella7 order by [id], tu sostituisci la tua query e bada che sia ordinata

    PrintLn infine, non fa altro che fare response.write...

    Pietro

  3. #13
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    1,183

    x pietro

    ho provato questo che sarebbe il tuo codice riadattato
    ma mi da una seie di numeri infiniti

    puoi dare un occhio grazie

    dim objcmd_ver as new oledbcommand (" select [id] from libro_soci order by [id] ", objconn)

    dim read as oledbdatareader

    objconn.open
    read=objcmd_ver.executereader


    do while read.read


    Dim x As Integer = read.getint32(0)
    dim old as integer=0

    If x > (old + 1) Then
    For j As Integer = old + 1 To x - 1
    response.Write(j)
    Next
    End If
    old = x
    Loop



    read.close
    objcmd_ver.connection.close()
    victor
    ----------------------

  4. #14
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116

    Re: x pietro

    Originariamente inviato da victor8872
    puoi dare un occhio grazie
    mi pare che old vada dichiarata prima del ciclo while e non dentro
    Pietro

  5. #15
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    victor, per il codice devi usare i tag [ code ] altrimenti non si capisce la distinzione fra esso e le TUE parole. Please.

  6. #16
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    1,183

    pietro

    nulla carissimo...
    mi continuano a venire fuori numeri all'infinito

    codice:
    dim objcmd_ver as new oledbcommand (" select [id] from libro_soci order by [id] ", objconn)
    
    	dim read as oledbdatareader
    	
    	objconn.open
    	read=objcmd_ver.executereader
    
    		dim old as integer=0
    	do while read.read
    
    
    Dim x As Integer = read.getint32(0)
    
    
    		If x > (old + 1) Then
    			For j As Integer = old + 1 To x - 1
    				response.Write(j)
    			Next
    			
    			old = x
    		End If
    		
    	Loop
    
    
    	
    	read.close
    	objcmd_ver.connection.close()
    victor
    ----------------------

  7. #17
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    questa è l'ultima versione che mi funziona
    codice:
        Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
            Using con As New OleDbConnection(StringaConnessione)
                con.Open()
                Dim command As OleDbCommand = con.CreateCommand()
                command.CommandText = "select [id] from libro_soci order by [id]"
    
                Using reader As OleDbDataReader = command.ExecuteReader(CommandBehavior.CloseConnection)
                    Dim old As Integer = 0
                    Do While (reader.Read)
                        Dim x As Integer = reader.GetInt32(0)
                        If x > (old + 1) Then
                            For j As Integer = old + 1 To x - 1
                                Response.Write(j & "
    ")
                            Next
                        End If
                        old = x
                    Loop
    
                End Using
            End Using
        End Sub
    spero che il campo ID sia numerico non testuale

    di più non so

    ciao
    Pietro

  8. #18
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Invece di usare un Datareader, che e' una entita' connessa e necessita di una connessione aperta, ti consiglio di effettuare una select in un Datatable..

  9. #19
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da djciko
    Invece di usare un Datareader, che e' una entita' connessa e necessita di una connessione aperta, ti consiglio di effettuare una select in un Datatable..
    A te ti funziona? :master:
    Pietro

  10. #20

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