Verificare a livello di codice la corruzione del database Access?
-
05-07-2019 - |
Domanda
Esiste un modo per verificare a livello di programmazione la corruzione degli oggetti del database in Access 2003?
Il mio progetto di sviluppo è diventato abbastanza complesso che è difficile controllare manualmente tutti gli oggetti dopo una giornata di programmazione per vedere se qualche piccolo controllo, modulo, report, query o oggetto di codice è stato corrotto in qualche modo. Ho già i dati divisi in un database SQL separato archiviato su un'altra macchina e questo progetto è semplicemente un'applicazione front-end per lavorare con i dati.
Per lo più un pensiero accademico, dato che non voglio andare così lontano - quindi mi hanno riportato la corruzione diverse settimane perché alcuni oggetti usati di rado sono stati corrotti quando.
Qualche idea là fuori? Grazie in anticipo per eventuali suggerimenti!
EDITED 12/03/2009 @ 11:51
Purtroppo, posso accettare solo una risposta, anche se ne ho alcune ottime, grazie per tutti i suggerimenti!
Soluzione
Né Compatta / Ripara né Decompila / Ricompila rileva tutti i problemi di corruzione, anche se dovresti comunque farlo.
Uso una funzione per esportare tutti i documenti contenitore (e QueryDefs) usando SaveAsText in una cartella con data / ora e la uso regolarmente durante il giorno. Se sospetto qualche corruzione, creo un nuovo mdb e utilizzo LoadFromText per ricreare gli oggetti.
Altri suggerimenti
Ti potrebbe interessare: È possibile rilevare a livello di programmazione tabelle di database di Access 2007 corrotte?
Sono propenso a conservare una copia di importanti database in ogni compact & amp; riparare e confrontare il nuovo database con quello precedente. Puoi anche verificare la presenza di caratteri non standard.
Le corrette pratiche di compilazione impediranno la corruzione del progetto VBA (che è ciò di cui stai parlando qui).
Ciò implica:
-
usa OPTION EXPLICIT in tutti i moduli.
-
disattiva COMPILE ON DEMAND nelle opzioni VBE.
-
compila il tuo codice regolarmente, mentre lavori.
-
periodicamente (ad esempio, una volta al giorno dopo un'intera giornata di codifica) decompilare e ricompilare il codice.
Se lo fai, non incontrerai mai corruzione in primo luogo, quindi non dovrai provarlo (che è impossibile in primo luogo).