Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 26
  1. #1
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,117

    Chiarimento su DataAdapter

    Ciao, qualcuno potrebbe chiarirmi le idee sull'uso del DataAdapter???

    da.Fill(ds.Tables["Tabella"]) riempie il data set passato come parametro con la query contenuta nel da

    invece l'update:

    da.Update(??,??) cosa fa????

  2. #2
    Con .fill riempi la datatable presente nel dataset. Con .Update aggiorni il database con le modifiche presenti nella datatable. Il dataadapter e' un oggetto comodo per lo sviluppatore perche' fa molto del lavoro automaticamente che altrimenti andrebbe fatto a manina su ogni riga della datatable. Il dataadapter quando viene chiamata la funzione .fill usa il suo dataadapter.selectcommand . Quando viene chiamata la funzione .Update per riportare le modifiche nel db utilizza il .updatecommand .deletecommand e .insertcommand. Queste comunque sono ovviamente solo degli accenni. Ti consiglio di approfondire l'argomento ado.net con molta teoria (con i post si va poco lontano con argomenti cosi vasti).
    Saluti a tutti
    Riccardo

  3. #3
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,002
    aggiorna il database con le modifiche apportate nel dataset attraverso una query di delete/update a seconda se il record è stato cancellato o modificato.

  4. #4
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,117
    Grazie per l'aiuto.

    Quidni vuol dire che quando creo un da, devo già associare il vari Commmand? (select, update, insert...)???

    Non capisco come deve essere l'update, l'insert è OK, ma l'update mi incasina... potresti postarmi un semplice esempio?

    Thanks

  5. #5
    Originariamente inviato da valeria75
    Quidni vuol dire che quando creo un da, devo già associare il vari Commmand? (select, update, insert...)???
    se lo usi solo per riempire una datatable ti basta solo il selectcommand. Per le altre operazioni dovrai usare gli altri command e quindi prepararli.
    Non capisco come deve essere l'update, l'insert è OK, ma l'update mi incasina... potresti postarmi un semplice esempio?
    l'esempio lo puoi far fare alla creazione guidata del dataadapter di visual studio. Finita la creazione guidata, guardi nel codice come vengono creati i vari updatecommand insertcommand e deletecommand.
    Saluti a tutti
    Riccardo

  6. #6
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,117
    Grazie! Mi stavo chiedendo: il dataadapter può essere utilizzato con Stored Procedure (con relativi parametri passati) e non con semplici query??

  7. #7
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,002
    Puoi anche creare i vari cmd in modo automatico, con l'oggetto commandbuilder ( vedi msdn ).

  8. #8
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,117
    ma il commandbuilder non gestisce query dirette con passaggio di parametri? io invece vorrei utilizzare stored procedure...

  9. #9
    Originariamente inviato da valeria75
    Grazie! Mi stavo chiedendo: il dataadapter può essere utilizzato con Stored Procedure (con relativi parametri passati) e non con semplici query??
    Certo che si. Devi tenere presente che il datadapter come detto sopra, ha il selectcommand updatecommand deletecommand e insertcommand. Ognuno di questi non e' altro che un normalissimo command (es. sqlcommand se usi sqlserver e il namespace sqlclient).
    Quindi, se vuoi usare una stored procedure con un command non fai altro che
    codice:
    tuocommand.commandtype = storedprocedure
    tuocommand.commandtext = "nomestoredprocedure"
    e per usarlo con un dataadapter
    codice:
    tuodataadapter.selectcommand = tuocommand
    i parametri li puoi aggiungere cosi
    codice:
    tuocommand.parameters.add("@parametro", sqldbtype.tipo).value = "ciao"
    Saluti a tutti
    Riccardo

  10. #10
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,117
    Perfetto!!! quindi il funzionamento è identico all'utilizzo di SP in DataReader.

    Ora il da mi è piu chiaro ma continuo a non capire quale strada è meglio utilizzare, mi spiego meglio:

    - posso trascinare un da tramite VS nel mio form, e in automatico mi vengono create tutti command di update, select e delete

    - posso creare manualmente il da ed i relativi command

    Voi che soluzione usate??? in quali casi è meglio utilizzare l'una piuttosto che l'altra?

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.