Μετάβαση στο κύριο περιεχόμενο
Office
Μετεγκατάσταση μιας βάσης δεδομένων της Access στον SQL Server

Μετεγκατάσταση μιας βάσης δεδομένων της Access στον SQL Server

Όλοι έχουμε όρια και μια βάση δεδομένων της Access δεν αποτελεί εξαίρεση. Για παράδειγμα, μια βάση δεδομένων της Access έχει όριο μεγέθους 2 GB και δεν μπορεί να υποστηρίξει περισσότερους από 255 ταυτόχρονους χρήστες. Έτσι, όταν έρθει η ώρα για τη βάση δεδομένων της Access για να μεταβείτε στο επόμενο επίπεδο, μπορείτε να κάνετε μετεγκατάσταση στον SQL Server. SQL Server (είτε εσωτερικής εγκατάστασης είτε στο Azure cloud) υποστηρίζει μεγαλύτερες ποσότητες δεδομένων, περισσότερους ταυτόχρονους χρήστες και έχει μεγαλύτερη χωρητικότητα από το μηχανισμό βάσης δεδομένων JET/ACE. Αυτός ο οδηγός σάς προσφέρει μια ομαλή εκκίνηση του ταξιδιού σας στο SQL Server, βοηθά στη διατήρηση των λύσεων προσκηνίου της Access που δημιουργήσατε και ελπίζουμε να σας παρακινήσει να χρησιμοποιήσετε την Access για μελλοντικές λύσεις βάσεων δεδομένων. Ο "Οδηγός αναβάθμισης" καταργήθηκε από την Access στην Access 2013, οπότε τώρα μπορείτε να χρησιμοποιήσετε τον βοηθό μετεγκατάστασης του Microsoft SQL Server (SSMA). Για να κάνετε επιτυχή μετεγκατάσταση, ακολουθήστε αυτά τα στάδια.

Τα στάδια της μετεγκατάστασης βάσης δεδομένων στον SQL Server

Πριν ξεκινήσετε

Οι παρακάτω ενότητες παρέχουν πληροφορίες φόντου και άλλες πληροφορίες που θα σας βοηθήσουν να ξεκινήσετε.

Πληροφορίες για τις διαιρεμένες βάσεις δεδομένων

Όλα τα αντικείμενα της βάσης δεδομένων της Access μπορούν είτε να βρίσκονται σε ένα αρχείο βάσης δεδομένων είτε να μπορούν να αποθηκευτούν σε δύο αρχεία βάσης δεδομένων: μια βάση δεδομένων προσκηνίου και μια βάση δεδομένων παρασκηνίου. Αυτό ονομάζεται διαίρεση της βάσης δεδομένων και έχει σχεδιαστεί για να διευκολύνει την κοινή χρήση σε ένα περιβάλλον δικτύου. Το αρχείο βάσης δεδομένων παρασκηνίου πρέπει να περιέχει μόνο πίνακες και σχέσεις. Το αρχείο προσκηνίου πρέπει να περιέχει μόνο όλα τα άλλα αντικείμενα, συμπεριλαμβανομένων των φορμών, των αναφορών, των ερωτημάτων, των μακροεντολών, των λειτουργικών μονάδων VBA και των συνδεδεμένων πινάκων στη βάση δεδομένων παρασκηνίου. Κατά τη μετεγκατάσταση μιας βάσης δεδομένων της Access, είναι παρόμοια με μια διαιρεμένη βάση δεδομένων στην οποία ο SQL Server ενεργεί ως ένα νέο παρασκηνίου για τα δεδομένα που βρίσκονται τώρα σε ένα διακομιστή.

Ως αποτέλεσμα, εξακολουθείτε να μπορείτε να διατηρήσετε τη βάση δεδομένων προσκηνίου της Access με συνδεδεμένους πίνακες στους πίνακες του SQL Server. Αποτελεσματικά, μπορείτε να αντλήσετε τα πλεονεκτήματα της ταχείας ανάπτυξης εφαρμογών που παρέχει μια βάση δεδομένων της Access, μαζί με τη δυνατότητα κλιμάκωσης του SQL Server.

Πλεονεκτήματα του SQL Server

Εξακολουθείτε να χρειάζεστε κάποια πειστική μετεγκατάσταση στον SQL Server; Ακολουθούν ορισμένα επιπλέον πλεονεκτήματα που πρέπει να σκεφθείτε:

  • Περισσότεροι ταυτόχρονοι χρήστες    Ο SQL Server μπορεί να χειριστεί πολλούς περισσότερους ταυτόχρονους χρήστες από την Access και ελαχιστοποιεί τις απαιτήσεις μνήμης όταν προστίθενται περισσότεροι χρήστες.

  • Αυξημένη διαθεσιμότητα    Με τον SQL Server, μπορείτε να δημιουργήσετε δυναμικά αντίγραφα ασφαλείας, είτε τμηματικά είτε ολοκληρωμένα, στη βάση δεδομένων ενώ χρησιμοποιείται. Κατά συνέπεια, δεν χρειάζεται να αναγκάζετε τους χρήστες να πραγματοποιήσουν έξοδο από τη βάση δεδομένων για να δημιουργηθεί το αντίγραφο ασφαλείας των δεδομένων.

  • Υψηλές επιδόσεις και δυνατότητα κλιμάκωσης    Η βάση δεδομένων του SQL Server συνήθως λειτουργεί καλύτερα από μια βάση δεδομένων της Access, ειδικά με μια μεγάλη βάση δεδομένων μεγέθους terabyte. Επίσης, ο SQL Server επεξεργάζεται ερωτήματα πολύ πιο γρήγορα και αποτελεσματικά με την ταυτόχρονη επεξεργασία ερωτημάτων, χρησιμοποιώντας πολλά εγγενή νήματα μέσα σε μία διεργασία για το χειρισμό αιτήσεων χρηστών.

  • Βελτιωμένη ασφάλεια    Χρησιμοποιώντας μια αξιόπιστη σύνδεση, ο SQL Server ενοποιείται με την ασφάλεια συστήματος των Windows για να παρέχει μια ενιαία ενσωματωμένη πρόσβαση στο δίκτυο και τη βάση δεδομένων, χρησιμοποιώντας τις βέλτιστες δυνατότητες και των δύο συστημάτων ασφαλείας. Αυτό διευκολύνει πολύ τη διαχείριση σύνθετων συστημάτων ασφαλείας. Ο SQL Server είναι ο ιδανικός χώρος αποθήκευσης για ευαίσθητες πληροφορίες, όπως αριθμούς κοινωνικής ασφάλισης, δεδομένα πιστωτικών καρτών και διευθύνσεις που είναι εμπιστευτικές.

  • Άμεση δυνατότητα ανάκτησης    Εάν το λειτουργικό σύστημα διακοπεί ή διακοπεί η λειτουργία του, ο SQL Server μπορεί να ανακτήσει αυτόματα τη βάση δεδομένων σε μια συνεπή κατάσταση σε λίγα λεπτά και χωρίς παρέμβαση διαχειριστή βάσης δεδομένων.

  • Χρήση του VPN    Πρόσβαση και εικονικά ιδιωτικά δίκτυα (VPN) Μην τα πάτε καλά. Ωστόσο, με τον SQL Server, οι απομακρυσμένοι χρήστες μπορούν να χρησιμοποιούν ακόμα τη βάση δεδομένων προσκηνίου της Access σε έναν υπολογιστή και το φόντο του SQL Server που βρίσκεται πίσω από το τείχος προστασίας VPN.

  • Azure SQL Server    Εκτός από τα πλεονεκτήματα του SQL Server, προσφέρει δυναμική δυνατότητα κλιμάκωσης χωρίς downtime, ευφυή βελτιστοποίηση, καθολική επεκτασιμότητα και διαθεσιμότητα, κατάργηση του κόστους υλικού και μειωμένη διαχείριση.

Επιλογή της καλύτερης επιλογής Azure SQL Server

Εάν κάνετε μετεγκατάσταση στο Azure SQL Server, υπάρχουν τρεις επιλογές για να επιλέξετε, καθεμία με διαφορετικά πλεονεκτήματα:

  • Ενιαία βάση δεδομένων/ελαστικές πισίνες    Αυτή η επιλογή έχει το δικό της πρόγραμμα διαχείρισης πόρων που διαχειρίζεται μέσω ενός διακομιστή βάσης δεδομένων SQL. Μια μεμονωμένη βάση δεδομένων είναι σαν μια περιορισμένη βάση δεδομένων στον SQL Server. Μπορείτε επίσης να προσθέσετε έναν ελαστικό χώρο συγκέντρωσης, ο οποίος είναι μια συλλογή βάσεων δεδομένων με ένα κοινόχρηστο σύνολο πόρων διαχειριζόμενο μέσω του διακομιστή βάσης δεδομένων SQL. Οι δυνατότητες του SQL Server που χρησιμοποιούνται συχνότερα είναι διαθέσιμες με ενσωματωμένα αντίγραφα ασφαλείας, επιδιόρθωση και αποκατάσταση. Ωστόσο, δεν υπάρχει εγγυημένος ακριβής χρόνος συντήρησης και η μετεγκατάσταση από τον SQL Server μπορεί να είναι δύσκολη.

  • Διαχειριζόμενη παρουσία    Αυτή η επιλογή είναι μια συλλογή βάσεων δεδομένων συστήματος και χρηστών με ένα κοινόχρηστο σύνολο πόρων. Μια διαχειριζόμενη παρουσία είναι όπως μια παρουσία της βάσης δεδομένων του SQL Server που είναι ιδιαίτερα συμβατή με τον SQL Server εσωτερικής εγκατάστασης. Μια διαχειριζόμενη παρουσία έχει ενσωματωμένα αντίγραφα ασφαλείας, επιδιόρθωση, ανάκτηση και είναι εύκολο να μετεγκαταστήσετε από τον SQL Server. Ωστόσο, υπάρχει ένας μικρός αριθμός δυνατοτήτων του SQL Server που δεν είναι διαθέσιμες και δεν υπάρχει εγγυημένος ακριβής χρόνος συντήρησης.

  • Εικονική μηχανή Azure    Αυτή η επιλογή σάς επιτρέπει να εκτελείτε τον SQL Server μέσα σε μια εικονική μηχανή στο Azure cloud. Έχετε τον πλήρη έλεγχο του μηχανισμού SQL Server και μιας εύκολης διαδρομής μετεγκατάστασης. Αλλά πρέπει να διαχειριστείτε τα αντίγραφα ασφαλείας, τις επιδιορθώσεις και την ανάρρωσή σας.

Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα επιλογή της διαδρομής μετεγκατάστασης βάσης δεδομένων σε Azure και επιλογή της σωστής επιλογής SQL Server στο Azure.

Πρώτα βήματα

Υπάρχουν μερικά προβλήματα στα οποία μπορείτε να απευθυνθείτε μπροστά, τα οποία μπορούν να σας βοηθήσουν να απλοποιήσετε τη διαδικασία μετεγκατάστασης πριν από την εκτέλεση του SSMA:

  • Προσθήκη ευρετηρίων πίνακα και πρωτευόντων κλειδιών    Βεβαιωθείτε ότι κάθε πίνακας της Access έχει ευρετήριο και πρωτεύον κλειδί. Ο SQL Server απαιτεί από όλους τους πίνακες να έχουν τουλάχιστον ένα ευρετήριο και απαιτεί από έναν συνδεδεμένο πίνακα να έχει ένα πρωτεύον κλειδί, εάν μπορεί να ενημερωθεί ο πίνακας.

  • Επιλέξτε σχέσεις πρωτεύοντος/εξωτερικού κλειδιού    Βεβαιωθείτε ότι αυτές οι σχέσεις βασίζονται σε πεδία με συνεκτικούς τύπους δεδομένων και μεγέθη. Ο SQL Server δεν υποστηρίζει συνδεδεμένες στήλες με διαφορετικούς τύπους δεδομένων και μεγέθη σε περιορισμούς εξωτερικού κλειδιού.

  • Κατάργηση της στήλης συνημμένου    Το SSMA δεν μετεγκαθιστά πίνακες που περιέχουν τη στήλη συνημμένων.

Πριν να εκτελέσετε το SSMA, ακολουθήστε τα παρακάτω πρώτα βήματα.

  1. Κλείστε τη βάση δεδομένων της Access.

  2. Βεβαιωθείτε ότι οι τρέχοντες χρήστες που είναι συνδεδεμένοι με τη βάση δεδομένων κλείνουν επίσης τη βάση δεδομένων.

  3. Εάν η βάση δεδομένων είναι σε μορφή αρχείου. mdbκαι, στη συνέχεια, καταργήστε την ασφάλεια σε επίπεδο χρήστη.

  4. Δημιουργήστε αντίγραφα ασφαλείας της βάσης δεδομένων σας. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα προστασία των δεδομένων σας με διεργασίες δημιουργίας αντιγράφων ασφαλείας και επαναφοράς.

Συμβουλή    Εξετάστε το ενδεχόμενο να εγκαταστήσετε τον Microsoft SQL Server Express Edition στον υπολογιστή σας, ο οποίος υποστηρίζει έως και 10 GB και είναι ένας δωρεάν και ευκολότερος τρόπος για να εκτελέσετε και να δείτε τη μετεγκατάσταση. Όταν συνδέεστε, χρησιμοποιήστε το LocalDB ως την παρουσία της βάσης δεδομένων.

Συμβουλή    Εάν είναι δυνατό, χρησιμοποιήστε μια μεμονωμένη έκδοση της Access. Εάν μπορείτε να χρησιμοποιήσετε το Office 365 και, στη συνέχεια, χρησιμοποιήστε το μηχανισμό βάσης δεδομένων της Access 2010 για να μετεγκαταστήσετε τη βάση δεδομένων της Access κατά τη χρήση του SSMA. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα μηχανισμός βάσης δεδομένων της Microsoft Access 2010 με δυνατότητα αναδιανομής.

Εκτέλεση SSMA

Η Microsoft παρέχει το βοηθό μετεγκατάστασης του Microsoft SQL Server (SSMA) για να διευκολύνει τη μετεγκατάσταση. Το SSMA μετεγκαθιστά κυρίως πίνακες και επιλέγει ερωτήματα χωρίς παραμέτρους. Οι φόρμες, οι αναφορές, οι μακροεντολές και οι λειτουργικές μονάδες VBA δεν μετατρέπονται. Η Εξερεύνηση μετα-δεδομένων του SQL Server εμφανίζει τα αντικείμενα βάσης δεδομένων της Access και τα αντικείμενα του SQL Server που σας επιτρέπουν να εξετάσετε το τρέχον περιεχόμενο και των δύο βάσεων δεδομένων. Αυτές οι δύο συνδέσεις αποθηκεύονται στο αρχείο μετεγκατάστασης, εάν αποφασίσετε να μεταφέρετε επιπλέον αντικείμενα στο μέλλον.

Σημείωση    Η διαδικασία μετεγκατάστασης μπορεί να διαρκέσει αρκετό χρόνο, ανάλογα με το μέγεθος των αντικειμένων της βάσης δεδομένων και την ποσότητα των δεδομένων που πρέπει να μεταφερθούν.

  1. Για να μετεγκαταστήσετε μια βάση δεδομένων χρησιμοποιώντας το SSMA, πρώτα κάντε λήψη και εγκαταστήστε το λογισμικό κάνοντας διπλό κλικ στο αρχείο MSI που κατεβάσατε. Βεβαιωθείτε ότι έχετε εγκαταστήσει την κατάλληλη έκδοση bit του 32 ή του 64 για τον υπολογιστή σας.

  2. Μετά την εγκατάσταση του SSMA, ανοίξτε το στην επιφάνεια εργασίας σας, κατά προτίμηση από τον υπολογιστή με το αρχείο βάσης δεδομένων της Access.

    Μπορείτε επίσης να το ανοίξετε σε έναν υπολογιστή που έχει πρόσβαση στη βάση δεδομένων της Access από το δίκτυο σε έναν κοινόχρηστο φάκελο.

  3. Ακολουθήστε τις οδηγίες έναρξης στο SSMA για να παρέχετε βασικές πληροφορίες, όπως τη θέση του SQL Server, τη βάση δεδομένων της Access και τα αντικείμενα για μετεγκατάσταση, πληροφορίες σύνδεσης και εάν θέλετε να δημιουργήσετε συνδεδεμένους πίνακες.

  4. Εάν κάνετε μετεγκατάσταση στον SQL Server 2016 ή νεότερη έκδοση και θέλετε να ενημερώσετε έναν συνδεδεμένο πίνακα, προσθέστε μια στήλη ROWVERSION επιλέγοντας Εργαλεία αναθεώρησης > ρυθμίσεις έργου > Γενικά.

    Το πεδίο ROWVERSION αποτρέπει την καταγραφή διενέξεων. Η Access χρησιμοποιεί αυτό το πεδίο ROWVERSION σε έναν συνδεδεμένο πίνακα του SQL Server για να προσδιορίσει πότε η εγγραφή Ενημερώθηκε για τελευταία φορά. Επίσης, εάν προσθέσετε το πεδίο ROWVERSION σε ένα ερώτημα, η Access το χρησιμοποιεί για να επιλέξει ξανά τη γραμμή μετά από μια λειτουργία ενημέρωσης. Αυτό βελτιώνει την αποτελεσματικότητα βοηθώντας να αποφευχθούν τα σφάλματα διένεξης και τα σενάρια διαγραφής εγγραφών που μπορούν να συμβούν όταν η Access εντοπίζει διαφορετικά αποτελέσματα από την αρχική υποβολή, όπως μπορεί να προκύψει με τύπους δεδομένων αριθμού κινητής υποδιαστολής και εναύσματα που τροποποιούν στήλες. Ωστόσο, αποφύγετε τη χρήση του πεδίου ROWVERSION σε φόρμες, εκθέσεις ή κώδικα VBA. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα ROWVERSION.

    Σημείωση    Αποφύγετε την συγκεχυμένη ROWVERSION με χρονικές σημάνσεις. Παρόλο που η χρονική σήμανση λέξης-κλειδιού είναι συνώνυμο για το ROWVERSION στον SQL Server, δεν μπορείτε να χρησιμοποιήσετε το ROWVERSION ως τρόπο για τη χρονική σήμανση μιας καταχώρησης δεδομένων.

  5. Για να ορίσετε ακριβείς τύπους δεδομένων, επιλέξτε Εργαλεία αναθεώρησης > ρυθμίσεις έργου > αντιστοίχιση τύπου. Για παράδειγμα, εάν αποθηκεύετε μόνο αγγλικό κείμενο, μπορείτε να χρησιμοποιήσετε τον τύπο δεδομένων varchar αντί για nvarchar .

Μετατροπή αντικειμένων

Το SSMA μετατρέπει αντικείμενα της Access σε αντικείμενα του SQL Server, αλλά δεν αντιγράφει τα αντικείμενα αμέσως. Το SSMA παρέχει μια λίστα με τα ακόλουθα αντικείμενα για μετεγκατάσταση, ώστε να μπορείτε να αποφασίσετε εάν θέλετε να τα μετακινήσετε στη βάση δεδομένων του SQL Server:

  • Πίνακες και στήλες

  • Επιλέξτε ερωτήματα χωρίς παραμέτρους.

  • Πρωτεύοντα και ξένα κλειδιά

  • Ευρετήρια και προεπιλεγμένες τιμές

  • Περιορισμοί ελέγχου (να επιτρέπεται η ιδιότητα στήλης μηδενικού μήκους, κανόνας επικύρωσης στήλης, επικύρωση πίνακα)

Ως βέλτιστη πρακτική, χρησιμοποιήστε την αναφορά αξιολόγησης του SSMA, η οποία εμφανίζει τα αποτελέσματα της μετατροπής, συμπεριλαμβανομένων των σφαλμάτων, των προειδοποιήσεων, των ενημερωτικών μηνυμάτων, των χρονικών εκτιμήσεων για την εκτέλεση της μετεγκατάστασης και των μεμονωμένων βημάτων διόρθωσης σφαλμάτων που πρέπει να ακολουθήσετε πριν να μετακινήσετε το αντικείμενα.

Η μετατροπή αντικειμένων βάσης δεδομένων λαμβάνει τους ορισμούς αντικειμένων από τα μετα-δεδομένα της Access, τους μετατρέπει σε αντίστοιχη σύνταξη Transact-SQL (T-SQL)και, στη συνέχεια, φορτώνει αυτές τις πληροφορίες στο έργο. Στη συνέχεια, μπορείτε να προβάλετε τα αντικείμενα SQL Server ή SQL Azure και τις ιδιότητές τους χρησιμοποιώντας τον SQL Server ή την Εξερεύνηση μετα-δεδομένων SQL Azure.

Για να μετατρέψετε, να φορτώσετε και να μετεγκαταστήσετε αντικείμενα στον SQL Server, ακολουθήστε αυτόν τον οδηγό.

Συμβουλή    Αφού μετεγκαταστήσετε επιτυχώς τη βάση δεδομένων της Access, αποθηκεύστε το αρχείο έργου για μελλοντική χρήση, ώστε να μπορείτε να μετεγκαταστήσετε ξανά τα δεδομένα σας για δοκιμή ή τελική μετεγκατάσταση.

Σύνδεση πινάκων

Εξετάστε το ενδεχόμενο να εγκαταστήσετε την πιο πρόσφατη έκδοση των προγραμμάτων οδήγησης SQL Server OLE DB και ODBC, αντί να χρησιμοποιήσετε τα εγγενή προγράμματα οδήγησης του SQL Server που συνοδεύουν τα Windows. Όχι μόνο τα νεότερα προγράμματα οδήγησης είναι πιο γρήγορα, αλλά υποστηρίζουν τις νέες δυνατότητες του Azure SQL που δεν έχουν τα προηγούμενα προγράμματα οδήγησης. Μπορείτε να εγκαταστήσετε τα προγράμματα οδήγησης σε κάθε υπολογιστή όπου χρησιμοποιείται η βάση δεδομένων που έχει μετατραπεί. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα πρόγραμμα οδήγησης Microsoft OLE DB 18 για τον SQL Server και το Microsoft ODBC Driver 17 για τον SQL Server.

Μετά τη μετεγκατάσταση των πινάκων της Access, μπορείτε να συνδεθείτε με τους πίνακες στον SQL Server, ο οποίος τώρα φιλοξενεί τα δεδομένα σας. Η σύνδεση απευθείας από την Access σάς παρέχει επίσης έναν απλούστερο τρόπο για να προβάλετε τα δεδομένα σας αντί να χρησιμοποιήσετε τα πιο περίπλοκα εργαλεία διαχείρισης του SQL Server.  Μπορείτε να υποβάλετε ερώτημα και να επεξεργαστείτε συνδεδεμένα δεδομένα, ανάλογα με τα δικαιώματα που έχουν ρυθμιστεί από το διαχειριστή της βάσης δεδομένων του SQL Server.

Σημείωση    Εάν δημιουργήσετε ένα DSN ODBC όταν συνδέεστε με τη βάση δεδομένων του SQL Server κατά τη διαδικασία σύνδεσης, δημιουργήστε το ίδιο DSN σε όλα τα μηχανήματα που χρησιμοποιούν τη νέα εφαρμογή ή χρησιμοποιήστε μέσω προγραμματισμού τη συμβολοσειρά σύνδεσης που είναι αποθηκευμένη στο αρχείο DSN.

Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα σύνδεση με ή εισαγωγή δεδομένων από μια βάση δεδομένων Azure SQL Server και Εισαγωγή ή σύνδεση με δεδομένα σε μια βάση δεδομένων του SQL Server.

Συμβουλή   Μην ξεχάσετε να χρησιμοποιήσετε τη Διαχείριση συνδεδεμένων πινάκων στην Access για να ανανεώσετε και να επανασυνδέσετε εύκολα πίνακες. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα Διαχείριση συνδεδεμένων πινάκων.

Δοκιμή και αναθεώρηση

Οι παρακάτω ενότητες περιγράφουν συνηθισμένα προβλήματα που μπορείτε να αντιμετωπίσετε κατά τη μετεγκατάσταση και τον τρόπο αντιμετώπισής τους.

Ερωτήματα

Μόνο τα ερωτήματα επιλογής μετατρέπονται. άλλα ερωτήματα δεν είναι, συμπεριλαμβανομένων των ερωτημάτων επιλογής που λαμβάνουν παραμέτρους. Ορισμένα ερωτήματα ενδέχεται να μην μετατραπούν πλήρως και το SSMA να αναφέρει σφάλματα ερωτημάτων κατά τη διαδικασία μετατροπής. Μπορείτε να επεξεργαστείτε με μη αυτόματο τρόπο αντικείμενα που δεν μετατρέπονται με τη σύνταξη της συνάρτησης T-SQL. Τα σφάλματα σύνταξης ενδέχεται να απαιτούν επίσης τη μη αυτόματη μετατροπή συναρτήσεων και τύπων δεδομένων που αφορούν την Access σε SQL Server. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα σύγκριση της Access SQL με το SQL Server TSQL.

Τύποι δεδομένων

Η Access και ο SQL Server έχουν παρόμοιους τύπους δεδομένων, αλλά έχουν επίγνωση των ακόλουθων πιθανών ζητημάτων.

Μεγάλος αριθμός    Ο τύπος δεδομένων "μεγάλος αριθμός" αποθηκεύει μια μη νομισματική, αριθμητική τιμή και είναι συμβατή με τον τύπο δεδομένων SQL bigint. Μπορείτε να χρησιμοποιήσετε αυτόν τον τύπο δεδομένων για τον αποτελεσματικό υπολογισμό μεγάλων αριθμών, αλλά απαιτεί τη χρήση της μορφής αρχείου βάσης δεδομένων της Access 16 (16.0.7812 ή νεότερες εκδόσεις). accdb και αποδίδει καλύτερα με την έκδοση 64-bit της Access. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα χρήση του τύπου δεδομένων "μεγάλος αριθμός " και επιλογή μεταξύ της έκδοσης 64 bit ή του 32-bit του Office.

Ναι/Όχι    Από προεπιλογή, μια στήλη "Ναι/Όχι" της Access μετατρέπεται σε πεδίο bit SQL Server. Για να αποφύγετε το κλείδωμα εγγραφών, Βεβαιωθείτε ότι το πεδίο bit έχει καθοριστεί ώστε να μην επιτρέπονται οι τιμές NULL. ΣΤΟ SSMA, μπορείτε να επιλέξετε τη στήλη bit για να ορίσετε την ιδιότητα να επιτρέπεται η ιδιότητα Null σε όχι. Στο TSQL, χρησιμοποιήστε τις προτάσεις Create table ή ALTER TABLE .

Ημερομηνία και ώρα    Υπάρχουν πολλά θέματα ημερομηνίας και ώρας:

  • Εάν το επίπεδο συμβατότητας της βάσης δεδομένων είναι 130 (SQL Server 2016) ή νεότερη έκδοση και ένας συνδεδεμένος πίνακας περιέχει μία ή περισσότερες στήλες ημερομηνίας/ώρας ή DateTime2, ο πίνακας μπορεί να επιστρέψει το μήνυμα #deleted στα αποτελέσματα. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα ο συνδεδεμένος πίνακας της Access σε βάση δεδομένων SQL-Server επιστρέφει #deleted.

  • Χρησιμοποιήστε τον τύπο δεδομένων datetime2 , ο οποίος έχει μεγαλύτερο εύρος ημερομηνιών από την ημερομηνία/ώρα.

  • Κατά την υποβολή ερωτημάτων για ημερομηνίες στον SQL Server, λάβετε υπόψη την ώρα καθώς και την ημερομηνία. Για παράδειγμα:

    • Το DateOrdered μεταξύ του 1/1/19 και του 1/31/19 ενδέχεται να μην περιλαμβάνει όλες τις παραγγελίες.

    • Το DateOrdered μεταξύ 1/1/19 00:00:00 πμ και 1/31/19 11:59:59 μμ περιλαμβάνει όλες τις παραγγελίες.

Συνημμένο   Ο τύπος δεδομένων "συνημμένο" αποθηκεύει ένα αρχείο στη βάση δεδομένων της Access. Στον SQL Server, έχετε πολλές επιλογές για να λάβετε υπόψη σας. Μπορείτε να εξαγάγετε τα αρχεία από τη βάση δεδομένων της Access και, στη συνέχεια, να εξετάσετε το ενδεχόμενο αποθήκευσης συνδέσεων με τα αρχεία στη βάση δεδομένων του SQL Server. Εναλλακτικά, μπορείτε να χρησιμοποιήσετε το FILESTREAM, το FileTables ή το απομακρυσμένο χώρο αποθήκευσης αντικειμένων BLOB (RBS) για να διατηρήσετε τα συνημμένα αποθηκευμένα στη βάση δεδομένων του SQL Server.

Υπερ-σύνδεση    Οι πίνακες της Access διαθέτουν στήλες υπερ-σύνδεσης που δεν υποστηρίζονται από τον SQL Server. Από προεπιλογή, αυτές οι στήλες θα μετατραπούν σε στήλες του nvarchar (max) στον SQL Server, αλλά μπορείτε να προσαρμόσετε την αντιστοίχιση για να επιλέξετε έναν μικρότερο τύπο δεδομένων. Στη λύση της Access, εξακολουθείτε να μπορείτε να χρησιμοποιήσετε τη συμπεριφορά υπερ-σύνδεσης σε φόρμες και εκθέσεις, εάν ορίσετε την ιδιότητα υπερ-σύνδεσης για το στοιχείο ελέγχου στην τιμή TRUE.

Πεδίο πολλών τιμών    Το πεδίο πολλών τιμών της Access μετατρέπεται σε SQL Server ως πεδίο ntext που περιέχει το οριοθετημένο καθορισμένο τμήμα τιμών. Επειδή ο SQL Server δεν υποστηρίζει τύπο δεδομένων πολλών τιμών που να διαμορφώνει σχέση πολλά-προς-πολλά, ενδέχεται να απαιτείται πρόσθετη σχεδίαση και μετατροπή.

Για περισσότερες πληροφορίες σχετικά με την αντιστοίχιση τύπων δεδομένων της Access και του SQL Server, ανατρέξτε στο θέμα Σύγκριση τύπων δεδομένων.

Σημείωση    Τα πεδία πολλών τιμών δεν μετατρέπονται και έχουν διακοπεί στην Access 2010.

Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα τύποι ημερομηνίας και ώρας, συμβολοσειρές και δυαδικοί τύποικαι Αριθμητικοίτύποι.

Visual Basic

Παρόλο που η VBA δεν υποστηρίζεται από τον SQL Server, σημειώστε τα παρακάτω πιθανά ζητήματα:

Συναρτήσεις VBA σε ερωτήματα    Τα ερωτήματα της Access υποστηρίζουν συναρτήσεις VBA σε δεδομένα σε μια στήλη ερωτήματος. Ωστόσο, τα ερωτήματα της Access που χρησιμοποιούν συναρτήσεις VBA δεν μπορούν να εκτελεστούν στον SQL Server, επομένως όλα τα δεδομένα που ζητήθηκαν μεταβιβάζονται στη Microsoft Access για επεξεργασία. Στις περισσότερες περιπτώσεις, αυτά τα ερωτήματα πρέπει να μετατρέπονται σε ερωτήματα διαβίβασης.

Συναρτήσεις που ορίζονται από το χρήστη σε ερωτήματα    Τα ερωτήματα της Microsoft Access υποστηρίζουν τη χρήση των συναρτήσεων που ορίζονται σε λειτουργικές μονάδες VBA για την επεξεργασία δεδομένων που έχουν διαβιβαστεί σε αυτές. Τα ερωτήματα μπορεί να είναι μεμονωμένα ερωτήματα, προτάσεις SQL σε προελεύσεις εγγραφών φόρμας/έκθεσης, προελεύσεις δεδομένων σύνθετων πλαισίων και πλαισίων λίστας σε φόρμες, αναφορές και πεδία πίνακα, καθώς και παραστάσεων κανόνα επικύρωσης ή κανόνα επικύρωσης. Ο SQL Server δεν μπορεί να εκτελέσει αυτές τις συναρτήσεις που ορίζονται από το χρήστη. Ίσως χρειαστεί να επανασχεδιάσετε αυτές τις συναρτήσεις με μη αυτόματο τρόπο και να τις μετατρέψετε σε αποθηκευμένες διαδικασίες στον SQL Server.

Βελτιστοποίηση επιδόσεων

Με μεγάλη διαφορά, ο πιο σημαντικός τρόπος για να βελτιστοποιήσετε την απόδοση με τον νέο σας διακομιστή SQL back-end είναι να αποφασίσετε πότε θα χρησιμοποιήσετε τοπικά ή απομακρυσμένα ερωτήματα. Κατά τη μετεγκατάσταση των δεδομένων σας στον SQL Server, μετακινείστε επίσης από ένα διακομιστή αρχείων σε ένα μοντέλο υπολογιστή-πελάτη-διακομιστή βάσης δεδομένων υπολογιστών. Ακολουθήστε αυτές τις γενικές οδηγίες:

  • Εκτελέστε μικρά ερωτήματα μόνο για ανάγνωση στο πρόγραμμα-πελάτη για ταχύτερη πρόσβαση.

  • Εκτελέστε μεγάλο χρονικό διάστημα, ερωτήματα ανάγνωσης/εγγραφής στο διακομιστή για να επωφεληθείτε από τη μεγαλύτερη επεξεργαστική ισχύ.

  • Ελαχιστοποιήστε την κυκλοφορία δικτύου με φίλτρα και συνάθροιση για να μεταφέρετε μόνο τα δεδομένα που χρειάζεστε.

Βελτιστοποίηση επιδόσεων στο μοντέλο βάσης δεδομένων διακομιστή-πελάτη

Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα Δημιουργία ερωτήματος διαβίβασης.

Ακολουθούν πρόσθετες, προτεινόμενες οδηγίες.

Τοποθέτηση της λογικής στο διακομιστή    Η εφαρμογή σας μπορεί επίσης να χρησιμοποιήσει Προβολές, συναρτήσεις που ορίζονται από το χρήστη, αποθηκευμένες διαδικασίες, υπολογιζόμενα πεδία και εναύσματα για να συγκεντρώσει και να μοιραστεί τη λογική των εφαρμογών, τους επιχειρηματικούς κανόνες και πολιτικές, τα σύνθετα ερωτήματα, την επικύρωση δεδομένων και τον κώδικα ακεραιότητας αναφορών στο Server, αντί για το πρόγραμμα-πελάτη. Αναρωτηθείτε, μπορεί αυτό το ερώτημα ή η εργασία να εκτελείται στο διακομιστή καλύτερα και ταχύτερα; Τέλος, ελέγξτε κάθε ερώτημα για να διασφαλίσετε τη βέλτιστη απόδοση.

Χρήση προβολών σε φόρμες και εκθέσεις    Στην Access, κάντε τα εξής:

  • Για φόρμες, χρησιμοποιήστε μια προβολή SQL για μια φόρμα μόνο για ανάγνωση και μια προβολή με ευρετήριο SQL για μια φόρμα ανάγνωσης/εγγραφής ως προέλευση εγγραφών.

  • Για αναφορές, χρησιμοποιήστε μια προβολή SQL ως προέλευση εγγραφών. Ωστόσο, δημιουργήστε μια ξεχωριστή προβολή για κάθε αναφορά, ώστε να μπορείτε να ενημερώνετε πιο εύκολα μια συγκεκριμένη αναφορά, χωρίς να επηρεάζονται άλλες αναφορές.

Ελαχιστοποίηση φόρτωσης δεδομένων σε φόρμα ή έκθεση    Μην εμφανίζετε δεδομένα μέχρι να το ζητήσει ο χρήστης. Για παράδειγμα, κρατήστε την ιδιότητα προέλευση εγγραφών κενή, κάντε τους χρήστες να επιλέξουν ένα φίλτρο στη φόρμα σας και, στη συνέχεια, συμπληρώστε την ιδιότητα προέλευση εγγραφών με το φίλτρο σας. Εναλλακτικά, χρησιμοποιήστε τον όρο WHERE του DoCmd. άνοιγμα και DoCmd. OpenReport για να εμφανίσετε τις ακριβείς εγγραφές που απαιτούνται από το χρήστη. Εξετάστε το ενδεχόμενο να απενεργοποιήσετε την περιήγηση εγγραφών.

Να είστε προσεκτικοί με ετερογενή ερωτήματα   Αποφύγετε την εκτέλεση ενός ερωτήματος που συνδυάζει έναν τοπικό πίνακα της Access και έναν συνδεδεμένο πίνακα του SQL Server, που μερικές φορές ονομάζεται υβριδικό ερώτημα. Αυτός ο τύπος ερωτήματος εξακολουθεί να απαιτεί πρόσβαση για τη λήψη όλων των δεδομένων του SQL Server στον τοπικό υπολογιστή και, στη συνέχεια, την εκτέλεση του ερωτήματος, δεν εκτελεί το ερώτημα στον SQL Server.

Πότε να χρησιμοποιείτε τοπικούς πίνακες    Εξετάστε το ενδεχόμενο χρήσης τοπικών πινάκων για δεδομένα που σπάνια αλλάζουν, όπως τη λίστα των Πολιτειών ή των επαρχιών σε μια χώρα ή περιοχή. Οι στατικοί πίνακες χρησιμοποιούνται συχνά για το φιλτράρισμα και μπορούν να αποδώσουν καλύτερα στο front-end της Access.

Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα σύμβουλος ρύθμισης μηχανισμού βάσης δεδομένων, Χρησιμοποιήστε την ανάλυση επιδόσεων για να βελτιστοποιήσετε μια βάση δεδομένων της Accessκαι να βελτιστοποιήσετε τις εφαρμογές της Microsoft Office Access που είναι συνδεδεμένες με τον SQL Server.

Δείτε επίσης

Οδηγός μετεγκατάστασης βάσης δεδομένων Azure

Ιστολόγιο μετεγκατάστασης δεδομένων της Microsoft

Microsoft Access στη μετεγκατάσταση του SQL Server, τη μετατροπή και την αναβάθμιση

Τρόποι κοινής χρήσης μιας βάσης δεδομένων της Access για υπολογιστή

Σημείωση:  Αυτή η σελίδα έχει μεταφραστεί μέσω αυτοματοποιημένης διαδικασίας και ενδεχομένως να περιέχει γραμματικά λάθη και ανακρίβειες. Ο σκοπός μας είναι αυτό το περιεχόμενο να σας φανεί χρήσιμο. Μπορείτε να μας πείτε εάν σας βοήθησαν αυτές οι πληροφορίες; Εδώ θα βρείτε το άρθρο στα Αγγλικά για να το συμβουλεύεστε.

Αναπτύξτε τις δεξιότητές σας στο Office
Εξερευνήστε το περιεχόμενο της εκπαίδευσης
Αποκτήστε πρώτοι τις νέες δυνατότητες
Γίνετε μέλος του Office Insider

Σας βοήθησαν αυτές οι πληροφορίες;

Σας ευχαριστούμε για τα σχόλιά σας!

Σας ευχαριστούμε για τα σχόλιά σας! Φαίνεται ότι μπορεί να είναι χρήσιμο να συνδεθείτε με έναν από τους συνεργάτες υποστήριξης του Office.

×