Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di tony83
    Registrato dal
    Feb 2005
    Messaggi
    3,179

    <vb.net>Datareader: numero di righe contenute dal datareader

    è possibile sapere il numero di righe trovate dal datareader prima di esegure il dr.read?

    So che è possibile sapere il numero di colonne, mi chiedevo se fosse possibile anche per il numero di righe contenute dal datareader in una select * FROM nome_tabella
    Tony

  2. #2
    Utente di HTML.it L'avatar di Tuco
    Registrato dal
    Sep 2005
    Messaggi
    199
    se mi ricordo bene penso di no. Il datareader è un oggetto di ado connesso stile il vecchio cursore forwardonly. Di conseguenza sa solo andare anvanti e non sa il numero di righe di una tabella. Per saperlo dei riempirti una datatable.
    Il mondo si divide in due categorie: chi ha la pistola carica e chi no...

  3. #3
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,000
    oppure fare un select count(*) prima del datareader.

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,372
    Confermo: non è possibile ottenere il numero di righe contenute in un DataReader perché... il DR non contiene delle righe, tutt'al più un buffer allocato per un singolo record o un gruppo di record, al solo scopo di ottimizzare il reperimento di dati mantenendo una connessione attiva con il server.

    L'unica soluzione è quella di eseguire una SELECT COUNT prima, come già suggerito, oppure usare un Adapter e riempirci un DataSet.

    Per ciò che riguarda un DataReader, puoi solamente determinare se contiene almeno una riga oppure no, tramite la proprietà HasRows, senza eseguire una lettura effettiva con Read.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

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