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

    [vb.net 2005] Quando usare DataSet e quando usare DataReader

    ciao a tutti

    Ho cominciato da pochissimo a studiare ado.net, e finora ho sempre utilizzato l'oggetto SqlDataReader, sia per la lettura dei dati, sia per l'aggiornamento e/o inserimento, creando ogni volta la query adatta in base alle mie esigenze. Diciamo che fino ad ora ho tenuto uno stile di programmazione molto vicino al vecchio vb6, e mi pare che l'oggetto DataReader sia un po il vecchio recordset. Vorrei quindi "evolvermi", e così ho cominciato a giocare un po con i DataSet, DataAdapter e tutto quanto ci gira intorno.
    Vorrei farvi queste 2 semplici domande:

    1 - quando conviene utilizzare un DataSet e quando conviene utilizzare un DataReader? Io fino ad ora ho usato solo datareader, ho fatto male? Potevo fare di meglio?
    2 - utilizzando i Datareader ho utilizzato anche delle strutture temporanee in cui memorizzare temporaneamente i dati e fare varie operazioni prima di scrivere le modifiche su db. HO capito male io oppure un dataset potrebbe consentirmi di eliminare queste strutture temporanee da me create e tenere quindi in cache i dati ?

    Spero di non aver detto vaccate, ho cominciato da poco In tal caso, spero abbiate la pazienza di correggermi o indirizzarmi verso la soluzione migliore

    Grazie a tutti!
    Yuri

  2. #2
    Ciao, Il DataSet è un oggetto che ti permette di prelevare dati dal DB
    e chiudere la connessione, una volta riempito il dataset (dentro il quale stanno i dataTable)
    puoi visualizzare i dati come meglio credi, anche più volte, senza riconnetterti al DB
    per l'appunto si chiamano Disconnected Class.
    I data Reader, restano connessi al DB fino alla fine del loro utlizzo e sono Forward Only.
    Ovviamente ti consentono solo di leggere i dati, senza modificarli, per farlo dovrai
    effettuare una nuova connessione al DB ed eseguire una executeNONQuery.

    I dataset ti permettono di fare modifiche e di gestire il loro update sul DB, decidendo come
    gestire i conflitti.

    Ti sarai accorto che il DataReader con ADODB.Recordset di VB6 ha poco a che fare.

  3. #3
    Quindi mi pare di aver capito che utilizzare un dataset è molto più veloce e ti semplifica parecchio la vita, giusto?

  4. #4
    Nn saprei che dirti, sono due cose diverse, magari se cerchi sulla rete puoi trovare
    opinioni di chi li usa frequentemente, io ultimamente sono bloccato su un progetto in VB6

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.