Newsgroup: it.comp.lang.visual-basic
Titolo: [?] dbgrid troppe righe interessate dall'aggiornamento , urgente aiuto

Ho la necessità di caricare 200.000 record su un controllo dbgrid associato
al controllo data ado.
Se vado a modificare un campo mi da l'errore troppe righe interessate
dall'aggiornamento e se continuo ad insistere con la modifica del record mi
da l'errore impossibile individuare la riga specificata per l'aggiornamento.
Non so se sia il controllo data o il controllo dbgrid,ma il tutto con una
quantità di dati notevolmente inferiore 10.000 record va tutto bene senza
cambiare una virgola di codice.
Ho provato ad aumentare la cache del controllo data,ma non ho notato nessuna
differenza.
Utilizzo vb6 sp4 un controllo data connessione lato client.
Ciao Dante

Sono sempre io, ho appurato che è il controllo data grid che dà l'errore e
precisamente da sia il  6152 sia il 6153
perchè non riesce ad aggiornare il database in quanto ha dei problemi di
risorse sul sistema.
Ma il mio dubbio rimane in quanto io penso che quanto il controllo non
riesce a tenere tutti i dati in memoria
dovrebbe fare un salvataggio dei dati in un file temporaneo inoltre il
database è di dimensioni piccole solo 20 megabyte
ed il mio sistema ha 128 Mb di ram.
Poi da MSDN ho letto che il controllo supporta tanti dati quante sono le
risorse del sistema ed un max numero di colonne che è di 32000 quindi io
rientro in questi parametri perchè ho 200.000 record ed appena 6 colonne di
tipo 3 long e 2 date ed una testo di 9.
Non so piu che fare, datemi qualche opinione in merito.
Grazie per aver letto questo post.
Dante

...


 Dante wrote


in ram (256 mb, non gb) solo per la griglia.
Sei sicuro??? non e' che in un momento di tua distrazione il dacontrol ha
fatto una connessione a internet, ha noleggiato 1Gb di memoria e se l'ha
fatta installare temporaneamente?? (questa cosa la MS la chiamerebbe
tecnologia innovativa).
Salve
                    Dbg
P.S. non faccio testo, sono un fissato sulla leggerezza delle applicazioni.

A questo punto penso che sia un bug del controllo.
Cosa ne dici Pal?

 Cosa ne dici Pal?
mai usato la datagrid, ogni volta che vb si azzarda a metterne una la tolgo
con cura e torno alla vecchia, cara, collaudata dbgrid... idem, ovviamente,
per l'adodc, finche' non lo conosco lo evito :)
(entrando quindi in loop - che ritmo freddo, o algoritmo che dir si voglia,
ci vorra' mai per uscirne?)
ma nel ng sui dc ado e correlati non ho sentito dire molto bene... ho anche
visto pero' che molti si incasinano coi tipi di cursore ecc. ecc. -- magari
prova a postare il codice che usi, cambiando subject e accentuando ado.
qualcuno dei bravi ti potra' dire qualcosa.
ps - vedo adesso che qui nel subject hai messo dbgrid, puo' essere
fuorviante.
ciao, a.

Innanzitutto grazie a pal e a DBG per avermi postato in precedenza.
Per pal:
Si nell' oggetto ho messo dbgrid ma è un errore involontario in quanto uso
data grid ma per anni ho usato il vecchio controllo.
Scusami ma non ho capito se tu usi un dbgrid al posto del data e gli associ
un ado data.
E' possibile farlo con qualche ingegno? (dalle mie prove effettuate non si
può fare)
In quanto al codice ado di associazione dati è fatto bene in quanto è lo
stesso codice utilizzato per altri progetti ma con dimensioni dati
inferiori.(Le impostazioni sono client, static,optimistic, read write)
Una delle ultime prove che ho fatto è cambiare le marshaloption senza aver
nessun risultato.
Ha dimenticavo il data grid va in errore sul evento error, e non mi permette
di muovermi in un altro record dopo aver modificato un campo del record dove
mi sono posizionato, MA se ricarico la maschera magia il valore sul data
base è stato modificato.
PER TUTTI:
Per ultimo vi rassicuro sul fatto che con i vecchi controlli dati tutto va a
meraviglia e alla faccia di ADO tutto MOOOLTO + veloce provato e testato
dopo il tuo post nel quale dici in poche parole:
ADO data e Data Grid se li conosci li Eviti.
Ciao Dante

 può fare)
non credo neanch'io, ho fatto una timida prova e la reazione di vb non e'
stata delle piu' favorevoli. a questo punto ci pensero' quando mi servira'.
ciao, a.