Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    188

    [VB& sp6] Consiglio su dilemma uso matrici.

    Salve a tutti. Ho un piccolo dilemma: devo confrontare 2 anagrafiche (un paio di volte l'anno) che sono alquanto grosse; una 48000 nominativi e l'altra 42000, quest'anno). Ora, io ho le 2 anagrafiche in 2 tabelle di un db e confronto un record di una tabella con tutta (o quasi, a seconda dei parametri e degli eventuali risultati dei precedenti confronti) la 2° tabella.

    Qualcuno, mi ha detto che se io caricassi tutto in 2 matrici e poi le confrontassi, sarebbe più veloce. E' così?

    Calcolando che man mano che analizzo, posso o meno identificare il record come da non contemplare nelle successive analisi.
    Spero che qualcuno capisca ciò che ho scritto, in quanto mi rendo conto di essere stato 'tortuoso'.

    Saluti a tutti.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2012
    Messaggi
    106
    ciao. si il confronto tra matrici è sicuramente più veloce, ma con un numero di record minori. Io non mi "fiderei" di tenere in memoria 40k record.
    ma che db utilizzi? se è un'operazione una tantum potresti semplicemente cavartela con una stored procedure

  3. #3
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Quote Originariamente inviata da benjy Visualizza il messaggio
    Qualcuno, mi ha detto che se io caricassi tutto in 2 matrici e poi le confrontassi, sarebbe più veloce. E' così?
    Assolutamente falso.
    Basta fare una semplice analisi per capirlo.

    Il tempo impiegato per caricare i dati dalle tabelle in matrici è peggiore (rispetto ad ADO) perché sei costretto a scorrere i dati record per record, campo per campo.
    ADO, la contrario, è ottimizato al massimo dato che questo è proprio il suo lavoro, ovvero caricare dati.

    Oltretutto se usi un recordset hai dati tipizzati, e già solo questo fa pendere l'ago della bilancia verso ADO.
    Con le matrici cosa hai????
    Quali metodi e/o proprietà ti offrono le matrici???


    Quindi chi ti ha suggerito questo ne sa poco o nulla delle enormi potenzialità intrinseche di ADO (ADODB).
    Altrimenti invece di inventare ADO, avrebbero detto: usate le matrici!

    Se hai dubbi, togliti lo sfizio di creare entrambe le procedure di caricamento, poi testale con un timer.

    Non hai detto che tipo confronti ifai su dati, ma qualsiasi esso sia il metodo migliore è quello di utilizzare oggetti, metodi e proprietà della libreria ADODB (da non confondere con i pessimi ed inutili controlli ADODC, e fratelli).


    Using ADO with Microsoft Visual Basic
    https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx


    ADO Code Examples in Visual Basic
    https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx




  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    188
    Quote Originariamente inviata da gibra Visualizza il messaggio
    Assolutamente falso.
    Basta fare una semplice analisi per capirlo.

    Il tempo impiegato per caricare i dati dalle tabelle in matrici è peggiore (rispetto ad ADO) perché sei costretto a scorrere i dati record per record, campo per campo.
    ADO, la contrario, è ottimizato al massimo dato che questo è proprio il suo lavoro, ovvero caricare dati.

    Oltretutto se usi un recordset hai dati tipizzati, e già solo questo fa pendere l'ago della bilancia verso ADO.
    Con le matrici cosa hai????
    Quali metodi e/o proprietà ti offrono le matrici???


    Quindi chi ti ha suggerito questo ne sa poco o nulla delle enormi potenzialità intrinseche di ADO (ADODB).
    Altrimenti invece di inventare ADO, avrebbero detto: usate le matrici!

    Se hai dubbi, togliti lo sfizio di creare entrambe le procedure di caricamento, poi testale con un timer.

    Non hai detto che tipo confronti ifai su dati, ma qualsiasi esso sia il metodo migliore è quello di utilizzare oggetti, metodi e proprietà della libreria ADODB (da non confondere con i pessimi ed inutili controlli ADODC, e fratelli).


    Using ADO with Microsoft Visual Basic
    https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx


    ADO Code Examples in Visual Basic
    https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx



    Io, purtroppo, se sono sicuro di una cosa, ribatto tranquillamente. In questo caso, siccome non mi ero mai posto il problema e l'interlocutore era molto convinto (sai, io sono programmatore e mi son dovuto aprire un'attività mia causa crisi, lui invece non è programmatore, ma si diletta e, con il suo dilettarsi è riuscito ad arrivare a lavorare in Inghilterra) per cui, sì ho avuto i miei dubbi, ma ho preferito tacere ed informarmi.


    Grazie per l'attenzione e... buona domenica!!!

    Per la cronaca: devo verificare se il nominativo quali nominativi già sono presenti nell'anagrafica principale, per cui mi sono inventato un controllo del campo nome con il confronto parola per parola e verificare quante parole corrispondono, dopodichè c'è anche la possibilità di verificare se la provincia è la stessa (omonimia su provincie differenti)

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.