Sviluppo4d.it
Sito indipendente di informazioni tecniche per sviluppatori 4th Dimension italiani  

Sviluppatori 4D

Utility 4D

Risorse 4D



4d logo
Naviga: Prev Next

Titolo: Ripristinare gli indici

Categoria: Codice Ultimo Aggiornamento: 06/06/05


Ecco un semplice metodo per ricostruire gli indici:

READ WRITE(*)
C_POINTER($table;$field)
C_LONGINT($i;$j;$type;$length)
C_BOOLEAN($indexed)

For ($i;1;Count tables)
    $table:=Table($i)
    For ($j;1;Count fields($table))
        $field:=Field($i;$j)
        GET FIELD PROPERTIES($field;$type;$length;$indexed)
        If ($indexed)
           SET INDEX($field->;False)
           SET INDEX($field->;True)
           FLUSH BUFFERS
        End if
    End for
End for

Alcune annotazioni:
- il metodo dovrebbe essere eseguito senza che altri utenti siano connessi e senza che se ne possano connettere prima del suo completamento;
- è possibile che la reindicizzazione necessiti di molto tempo;
- le subtable devono essere indicizzate a parte.

Se la reindicizzazione non andasse a buon fine, bisogna controllare quale campo comporta tale problema. Si potrebbe, ad esempio, prima della reindicizzazione di ogni campo, scrivere in un file su quali campi stiamo agendo, in modo da poter sapere quale dato ha portato al crash.



Inviato da: PierPaolo Sichera Visite: 12639

Se accedi con utente e password, puoi aggiungere dei commenti.


Accesso

User:
Pass: Accedi

Cerca

Se non trovi le informazioni che cerchi scrivi a aiuto@sviluppo4d.it

4D Principali

4D Discussioni

Faq random


Crediti

Dominio registrato da ZetaNet
Sito realizzato da Nexus srl
4D SQL 11.9.0 offerto da 4D & Italsoftware
Icone di FAMFAMFAM
Moderato da Umberto Migliore
329 utenti registrati

Pagina servita il 23/11/24 alle 05:26:44 Valid HTML 4.01! Valid CSS!

Mutuo Facile, iDigitalScout, iDigitalTags e altre app di Nexid srl per iPhone e iPad

Cidroid, distributore italiano lettori barcode per IOS Apple iPhone, iPod, iPad