Datatable vs Dataset

voturi
104

Eu folosesc în prezent un DataTable pentru a obține rezultate dintr-o bază de date pe care le pot utiliza în codul meu.

Cu toate acestea, mulți exemplu pe show-ul folosind un set de date în loc și accesarea tabelului (e) prin metoda colecțiilor.

Există vreun avantaj, al performanței sau în alt mod, de a folosi sau seturi de date DataTables ca metodă de stocare rezultate pentru SQL?

Întrebat 05/08/2008 la 14:07
sursa de către utilizator
În alte limbi...                            


6 răspunsuri

voturi
82

Este într-adevăr depinde de tipul de date pe care îl aduc înapoi. Din moment ce un set de date este (în vigoare), doar o colecție de obiecte DataTable, puteți reveni mai multe seturi distincte de date într-un singur și, prin urmare, mai ușor de gestionat, obiect.

-Performanță înțelept, aveți mai multe șanse de a obține de la ineficiență interogări neoptimizate decât de la alegere „greșită“ a .NET construct. Cel puțin, asta a fost experiența mea.

Publicat 05/08/2008 la 14:12
sursa de către utilizator

voturi
19

O diferență majoră este faptul că seturile de date poate deține mai multe tabele și puteți defini relații între aceste tabele.

Dacă returnați doar un singur set de rezultate, deși aș crede un DataTable ar fi mai optimizat. Mi-ar cred că trebuie să existe niște aeriene (acordate mici) pentru a oferi funcționalitatea un set de date și nu ține evidența mai multor DataTables.

Publicat 14/09/2008 la 04:07
sursa de către utilizator

voturi
6

în 1.x acolo folosit pentru a fi lucruri DataTables nu a putut face ceea ce Datasets ar putea (nu-mi amintesc exact ce). Tot ceea ce a fost schimbat în 2.x. Părerea mea este că de aceea o mulțime de exemple încă mai folosesc seturi de date. DataTables ar trebui să fie mai repede, deoarece acestea sunt mai usoare. Dacă sunteți trăgând doar un singur ResultSet, cel mai bun alegerea dvs. între cele două.

Publicat 05/08/2008 la 14:10
sursa de către utilizator

voturi
5

O caracteristică a setului de date este că, dacă puteți apela mai multe declarații selectați în procedurile stocate, setul de date va avea un DataTable pentru fiecare.

Publicat 05/08/2008 la 14:15
sursa de către utilizator

voturi
3

Există unele optimizări le puteți folosi la umplerea unui DataTable, cum ar fi apelarea BeginLoadData (), introducerea datelor, apoi de asteptare EndLoadData (). Acest lucru se stinge un comportament intern în cadrul DataTable, cum ar fi întreținerea indecșilor etc. A se vedea acest articol pentru detalii suplimentare.

Publicat 14/09/2008 la 03:55
sursa de către utilizator

voturi
0

Când se face numai cu un singur tabel, oricum, cea mai mare diferență practică, am constatat este că are un set de date „HasChanges“ metoda, dar DataTable nu. Ambele au o „GetChanges“ Cu toate acestea, astfel încât să puteți folosi ca și test pentru nul.

Publicat 05/12/2016 la 15:50
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more