Ho associato un evento alla creazione del dg per gestire una paginazione personalizzata. (che però non sono in grado di fare)
avete degli esempi?
Io programmo in c#
Ho associato un evento alla creazione del dg per gestire una paginazione personalizzata. (che però non sono in grado di fare)
avete degli esempi?
Io programmo in c#
Gentile Sonikag, 30 milioni di record?Originariamente inviato da Sonikag
Ho associato un evento alla creazione del dg per gestire una paginazione personalizzata. (che però non sono in grado di fare)
avete degli esempi?
Io programmo in c#![]()
![]()
Anche se il DataTable può contenere circa 16 milioni di record, non bisogna tentare di caricarvi più di qualche centinaio di righe![]()
Il numero di righe si riduce impostando la condizione where opportuna.
Se ciò, non è applicabile, bisogna implementare un buon meccanismo di paginazione e non bisogna prendere in considerazione il mediocre metodo Fill del DataAdapter.![]()
Perciò occorre solo rimboccarsi le maniche e cominciare a scrivere codice SQL intelligente![]()
etc... etc... sto copiando dal mio libro :maLOL: ma tu non leggi mai?![]()
Pietro
Originariamente inviato da pietro09
Gentile Sonikag, 30 milioni di record?![]()
![]()
Anche se il DataTable può contenere circa 16 milioni di record, non bisogna tentare di caricarvi più di qualche centinaio di righe![]()
Il numero di righe si riduce impostando la condizione where opportuna.
Se ciò, non è applicabile, bisogna implementare un buon meccanismo di paginazione e non bisogna prendere in considerazione il mediocre metodo Fill del DataAdapter.![]()
Perciò occorre solo rimboccarsi le maniche e cominciare a scrivere codice SQL intelligente![]()
etc... etc... sto copiando dal mio libro :maLOL: ma tu non leggi mai?![]()
Della serie: cerchi Grazia e trovi Giustizia...
A Pietro e secondo te se Sonikag sapeva farlo t'avrebbe postato?![]()
Comunque sono d'accordo con te, la migliore cosa in questi casi è armarsi di pazienza e cercare magari sulla rete, io ho fatto così proprio in un caso come il tuo, ho impiegato tanto ma alla fine ci si riesce, è difficile dare tutte le spiegazioni del caso, la cosa migliore che posso farti e rimandarti qui sperando che questo possa esserti d'aiuto puoi partire da questa pagina e trovare quello che ti interessa sul menu di sinistra.
P.S. nel link che ti suggerisco, compaiono dei caratteri a "spazio" nella stringa (%20 e <br%20/>) devi levarli, io non sono riuscito ad inviartela "pulita"
io volevo solo scherzareun pochino solo
![]()
a scanso di equivoci, il mio libro è: Programmare asp.net di Dino Esposito
Per chi non avesse capito, è da leggere e non da usare come soprammobile(e qui non scherzo
)
Pietro
1. non caricare più di 100 righe nel DataTable.Originariamente inviato da pietro09
Anche se il DataTable può contenere circa 16 milioni di record, non bisogna tentare di caricarvi più di qualche centinaio di righe![]()
Il numero di righe si riduce impostando la condizione where opportuna.
Se ciò, non è applicabile, bisogna implementare un buon meccanismo di paginazione e non bisogna prendere in considerazione il mediocre metodo Fill del DataAdapter.![]()
Spiegami perchè secondo te (dino non lo considero nemmeno) non si devono inserire + di 100 righe nel DataTable perchè questa cosa mi torna tanto come una stronz@ta immensa.
2. un buon meccanismo di paginazione e non bisogna prendere in considerazione il mediocre metodo Fill del DataAdapter.
ovvero? girarsi il rowset riga per riga e buttarlo dentro il datatable? Another Way? Sinceramente ti metteresti a lavorare sulle interfacce per risolvere il problema? Io preferirei 1000 volte far eseguire un catch dei dati da fonti differenti (4 - 5 console che mi redono i dati e alla fine fare il merge)
altra cosa. tentare di paginare 30.000.000 di record è paragonabile ad uccidere i server impiegati.
Se il tuo SqlServer non schianta a schiantare sarà il tuo webServer.
ps x Sonika.
1. digli al tuo project manager di spararsi.
2. mi associo a pietro, lo vogliamo comprare qualche libro si o no?
Ho voluto scherzaree adesso me ne prendo le conseguenze
![]()
Rispondo, o cerco di rispondere, riguardo alla stronzata di non caricare più di qualche centinaia di righe in un Datatable.
Io ho il difetto di leggere un poco. Non prendo tutto per oro colato, ma, fino a prova contraria, non ho motivo di dubitare che quello che scrivono Autori importanti, sia giusto.
I libri che ho sulla scrivania sono:
Programmare Asp.Net, Dino Esposito
Programmare Visual Basic.Net, Francesco Balena
Asp.Net, Wrox
e altri secondari.
(Gli ho letti, naturalmente)
Ebbene, sul libro di Francesco, il mio preferito, vado a pagina 772, capitolo: Paginare i risultati. Non riporto l'articolo, ma qualche frase:
Implementare un buon meccanismo di paginazione non è affatto banale. Ad esempio, è possibile implementare un meccanismo mediocre passando un record di partenza e un numero di record come argomenti al metodo Fill del DataAdapter, come nel codice che segue:
***codice:'Legge l'n-esima pagina della tabella Publishers 'ogni pagina contiene 10 record da.Fill(ds, (n-1)*10,10,"Publishers")
Ciò che realmente accade è che il DataAdapter legge tutti i record prima di quelli a cui si è effettivamente interessati, e quindi li scarta.
Questo aproccio funziona bene con resulset di piccole dimensioni, ma non andrebbe mai usato nel caso di tabelle contenenti più di qualche centinaio di righe.
Segue l'implementazione della paginazione via SQL.
Per quanto riguarda Dino Esposito, basta andare a pagina 353, capitolo: Paginazione dei Data Source. Il capitolo è impegnativo, va letto con attenzione. Riporta la tecnica della paginazione, sql server ed (accennato) Oracle.
***
Allora, io non sono abbastanza bravo da contestare questi Autori. Perciò, chi avesse prove concrete che abbiano detto cazzate (scusate), è pregato di esporle. Grazie![]()
Pietro
Posso???
Scusate ma a me pare che abbiate leggermente scazzato.
Restando valide tutte le argomentazioni tecniche che adducete, viene da chiedermi se quel 30.000.000 che voi prendete come numero di righe nel datagrid, non volesse(nelle intenzioni dell'autore del post) semplicemente indicare che questo potesse essere l'ennesimo 3d sul datagrid e sulla paginazione.
Che ne pensate?
:rollo:
Concordo pienamente e l'accendo...Originariamente inviato da otello
Posso???
Scusate ma a me pare che abbiate leggermente scazzato.
Restando valide tutte le argomentazioni tecniche che adducete, viene da chiedermi se quel 30.000.000 che voi prendete come numero di righe nel datagrid, non volesse(nelle intenzioni dell'autore del post) semplicemente indicare che questo potesse essere l'ennesimo 3d sul datagrid e sulla paginazione.
Che ne pensate?
:rollo: