Αυτό το άρθρο παρέχει λύσεις για την αντιμετώπιση του σφάλματος "Η εγγραφή είναι πολύ μεγάλη" στην MS Access.
Μπορεί να έχετε αντιμετωπίσει μια κατάσταση όπου προσπαθείτε να εισαγάγετε ένα φαινομενικά μικρό αρχείο στη βάση δεδομένων της Access, αλλά δεν είναι τόσο μικρό όσο νομίζατε. Αυτό το γεγονός έρχεται στο φως όταν σας ενοχλεί, εμφανίζοντας μια προειδοποίηση που λέει «Η εγγραφή είναι πολύ μεγάλη», σφάλμα 3047. Αυτό μπορεί να σας εκπλήξει πλήρως, επειδή το μέγεθος του αρχείου σας μπορεί στην πραγματικότητα να είναι πολύ μικρό. Για να μπορέσετε να αντιμετωπίσετε αυτό το σφάλμα, πρέπει πρώτα να κατανοήσετε γιατί ακριβώς πρόκειται για το σφάλμα. Αρχικά, αυτό θα είναι το πρώτο μας σημείο εστίασης. 
Αιτίες πίσω από το σφάλμα
Αυτό που πολλοί χρήστες της Access δεν γνωρίζουν είναι ότι υπάρχει ένα όριο στις εγγραφές της Access που τους περιορίζει να λαμβάνουν όχι περισσότερους από 2000 χαρακτήρες για τον «πραγματικά διαθέσιμο χώρο». Αυτό σημαίνει ότι ένας χρήστης έχει λάβει μόνο 4000 byte Unicode, αυτό είναι το είδος του ορίου που δύσκολα μπορεί να ξεπεραστεί. Πολλές φορές που υπερβαίνουν αυτό το όριο είναι καθαρά ακούσια, αφήνοντας τον αδιανόητο χρήστη με ένα άλλο περίπλοκο σφάλμα που πρέπει να αντιμετωπίσει.
Προχωρώντας μπροστά από τις αιτίες πίσω από αυτό το σφάλμα, θα προσπαθήσουμε τώρα να κατανοήσουμε τις πιθανές λύσεις σε ένα δεδομένο πρόβλημα.
Αντιμετωπίζοντας το σφάλμα
Μερικές από τις κοινές διορθώσεις που μπορείτε να χρησιμοποιήσετε όταν παρακολουθείτε αυτό το σφάλμα έχουν εξηγηθεί παρακάτω.
Δοκιμάστε να επαναπροσδιορίσετε τον πίνακα – Μία από τις πιο συχνά επιλεγμένες λύσεις σε αυτό το πρόβλημα είναι να προσπαθήσετε να επαναπροσδιορίσετε τον πίνακα από την αρχή. Αυτό θα περιλαμβάνει όχι μόνο την αφαίρεση παλιών και περιττών πεδίων, αλλά και την προσθήκη μερικών νέων πεδίων.
- Χρησιμοποιήστε το Memo Fields - Μπορείτε να δοκιμάσετε να αντιμετωπίσετε το σφάλμα 3047 χρησιμοποιώντας πεδία τύπου Memo και όχι πεδία τύπου κειμένου. Μπορείτε να ορίσετε τον τύπο πεδίου στο σημείωμα ορίζοντας την τιμή της ιδιότητας τύπου πεδίου σε 12. Εάν το έχετε στο 10, θα πάρετε ξανά ένα πεδίο κειμένου. Εάν καταλήξετε να υπερβείτε το δεδομένο όριο σε περίπτωση πεδίου σημείωσης, η Visual Basic θα χρησιμοποιήσει μια ξεχωριστή σελίδα για την τοποθέτηση αυτών των πεδίων στη βάση δεδομένων.
- Χρησιμοποιήστε τη μέθοδο DoCmd.TransferSpreadSheet - Σύμφωνα με την έκδοση MS Access του 2016, το όριο κάθε πίνακα ορίζεται σε 4000 εγγραφές, με συνολικό μέγεθος 2 GB. Επομένως, εάν καταλήξετε να δημιουργήσετε έναν πίνακα που υπερβαίνει αυτό το όριο, θα πρέπει να αντιμετωπίσετε αυτό το σφάλμα.
Εναλλακτικός τρόπος αντιμετώπισης
Εκτός από τη χρήση ενός Επιδιόρθωση πρόσβασης εργαλείο ή τρόποι αντιμετώπισης του σφάλματος που δίνεται παραπάνω, μπορείτε επίσης να χρησιμοποιήσετε μια λύση που περιλαμβάνει τη χρήση ενός υπολογιστικού φύλλου excel και να το συνδέσετε ξανά στον πίνακα. Αυτό θα σας επιτρέψει να έχετε ένα ερώτημα που μπορεί να αποθηκεύσει πάνω από 4000 εγγραφές και να εξαγάγει για να υπερέχει όποτε υπάρχει ανάγκη, και αυτό χωρίς σφάλματα.
Ωστόσο, ένα βασικό πράγμα που πρέπει να θυμάστε εδώ είναι να βεβαιωθείτε ότι χρησιμοποιείτε το VBA κατά την εξαγωγή μαζικών ερωτημάτων
Εισαγωγή συγγραφέα:
Η Vivian Stevens είναι ειδικός στην ανάκτηση δεδομένων στο DataNumen, Inc., η οποία είναι ο παγκόσμιος ηγέτης στις τεχνολογίες ανάκτησης δεδομένων, συμπεριλαμβανομένων SQL Server επισκευή και υπερέχουν προϊόντα λογισμικού ανάκτησης. Για περισσότερες πληροφορίες επισκεφθείτε www.datanumen.com
Δοκιμάστε να επαναπροσδιορίσετε τον πίνακα – Μία από τις πιο συχνά επιλεγμένες λύσεις σε αυτό το πρόβλημα είναι να προσπαθήσετε να επαναπροσδιορίσετε τον πίνακα από την αρχή. Αυτό θα περιλαμβάνει όχι μόνο την αφαίρεση παλιών και περιττών πεδίων, αλλά και την προσθήκη μερικών νέων πεδίων.