Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    [VB.Net 05] Recordcount che non funziona

    ciao ragazzi

    dunque, il mio problema è questo:

    ho bisogno di fare la Recordcount di un recordset di ado, cosa assai semplice. Carico il recordset facendo una Execute sulla connessione. Il database da cui prelevo i dati è un db di SQLServer.
    Quando faccio la recordcount mi da errore e il valore della recordcount è -1.
    Non riesco a comprendere.
    Questo è il codice:
    codice:
    For indTab = 0 To UBound(ElencoTabelle) - 1
        strSql = "exec sp_fkeys '" + ElencoTabelle(indTab) + "'"
        adoRsSql = adoConn.Execute(strSql)
    
        If adoRsSql.State = 1 Then
           If Not adoRsSql.EOF Then
              PBar_Avanzamento.Maximum = adoRsSql.RecordCount
    
    ...
    • ElencoTabelle --> è un array che contiene l'elenco dei nomi delle tabelle del database
    • PBar_Avanzamento.Maximum --> è una progress bar alla quale devo assegnare il valore massimo = recordcount



    grazie a tutti

    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

  2. #2
    Utente di HTML.it L'avatar di Kahm
    Registrato dal
    Dec 2004
    residenza
    Rome
    Messaggi
    3,582

    Re: [VB.Net 05] Recordcount che non funziona

    Originariamente inviato da ladyBlu
    ciao ragazzi

    dunque, il mio problema è questo:

    ho bisogno di fare la Recordcount di un recordset di ado, cosa assai semplice. Carico il recordset facendo una Execute sulla connessione. Il database da cui prelevo i dati è un db di SQLServer.
    Quando faccio la recordcount mi da errore e il valore della recordcount è -1.
    Non riesco a comprendere.
    Questo è il codice:
    codice:
    For indTab = 0 To UBound(ElencoTabelle) - 1
        strSql = "exec sp_fkeys '" + ElencoTabelle(indTab) + "'"
        adoRsSql = adoConn.Execute(strSql)
    
        If adoRsSql.State = 1 Then
           If Not adoRsSql.EOF Then
              PBar_Avanzamento.Maximum = adoRsSql.RecordCount
    
    ...
    • ElencoTabelle --> è un array che contiene l'elenco dei nomi delle tabelle del database
    • PBar_Avanzamento.Maximum --> è una progress bar alla quale devo assegnare il valore massimo = recordcount



    grazie a tutti

    ehm...
    scusa la domanda
    ma ..cavolo hai visual studio 2005 con framework 2.0 e che fai? usi ado?
    hai mai pensato di usare ado.net tipo il datareader?
    se vuoi ti passo un po di codice
    NN vi diro mai chi sono in realta,
    tutti i miei 3D sono orfani, non insistete per farmi rispondere ai 3D aperti da me

  3. #3
    tu hai ragione, ma non ho avuto modo di studiare praticamente niente quindi continuo a programmare più o meno come col 6.
    così mi hanno obbligata a fare per ora.

    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

  4. #4
    Utente di HTML.it L'avatar di Kahm
    Registrato dal
    Dec 2004
    residenza
    Rome
    Messaggi
    3,582
    ok ok

    ti da errore..
    sicuramente xke la maximum nn puo essre -1
    tu come hai aperto il recordset? hai messo un
    codice:
    conn,open "stringasql",3,3
    PARAMETRO CHE specifica l'apertura?



    altrimenti se proprio nn va
    ti fai una bella funzioncina che ti ritorna il recordcount
    NN vi diro mai chi sono in realta,
    tutti i miei 3D sono orfani, non insistete per farmi rispondere ai 3D aperti da me

  5. #5
    Originariamente inviato da Kahm
    ok ok

    ti da errore..
    sicuramente xke la maximum nn puo essre -1
    tu come hai aperto il recordset? hai messo un
    codice:
    conn,open "stringasql",3,3
    PARAMETRO CHE specifica l'apertura?

    altrimenti se proprio nn va
    ti fai una bella funzioncina che ti ritorna il recordcount
    ho già scritto come apro il recordset:
    codice:
    strSql = "exec sp_fkeys '" + ElencoTabelle(indTab) + "'"
    adoRsSql = adoConn.Execute(strSql)
    ho usato mille volte questo sistema e ora non mi funziona. non ne capisco il motivo. :master:

    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    798
    devi aprire il recordset, e non utilizzare l'oggetto connessione con execute.
    Ans.

  7. #7
    Originariamente inviato da ans
    devi aprire il recordset, e non utilizzare l'oggetto connessione con execute.
    ho usato sempre questo sistema per aprire un recordset quando i dati provengono da una storedprocedure e non ho mai avuto problemi. chiaramente utilizzavo Vb6. è possibile secondo te che in .net non sia possibile fare la stessa cosa? perchè? :master:

    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

  8. #8
    Utente di HTML.it L'avatar di Kahm
    Registrato dal
    Dec 2004
    residenza
    Rome
    Messaggi
    3,582
    Originariamente inviato da ladyBlu
    ho usato sempre questo sistema per aprire un recordset quando i dati provengono da una storedprocedure e non ho mai avuto problemi. chiaramente utilizzavo Vb6. è possibile secondo te che in .net non sia possibile fare la stessa cosa? perchè? :master:
    almeno provaci a fare come ha detto ans
    altrimenti prova a metere quello che ho detto io


    se nn provi nn riesci
    NN vi diro mai chi sono in realta,
    tutti i miei 3D sono orfani, non insistete per farmi rispondere ai 3D aperti da me

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.