Πώς να θέσει το επίπεδο συμβατότητας για τον κεντρικό υπολογιστή SQL βάση δεδομένων του 2008 ή του 2005
Κατά επιλέγοντας τα στοιχεία ή πραγματοποιώντας την ερώτηση στον κεντρικό υπολογιστή το 2008 Microosft SQL ή τη βάση δεδομένων κεντρικών υπολογιστών το 2005 SQL, το ακόλουθη μήνυμα λάθους ή η αποτυχία μπορεί να επιστραφεί:
[Microsoft] [οδηγός κεντρικών υπολογιστών ODBC SQL] [κεντρικός υπολογιστής SQL] [Msg 4147, επίπεδο 15, κράτος 1, γραμμή 4] Το μη-Ansi χρήσεων ερώτησης εξωτερικό ενώνει τους χειριστές (» *=» ή «=*»). Για να τρέξετε αυτήν την ερώτηση χωρίς τροποποίηση, παρακαλώ θέστε το επίπεδο συμβατότητας για την τρέχουσα βάση δεδομένων σε 80, χρησιμοποιώντας την ΚΑΘΟΡΙΣΜΕΝΗ επιλογή COMPATIBILITY_LEVEL ALTER της ΒΆΣΗΣ ΔΕΔΟΜΈΝΩΝ. Συστήνεται έντονα να ξαναγραφεί η ερώτηση χρησιμοποιώντας το Ansi εξωτερικό ενώνει τους χειριστές (ΑΡΙΣΤΕΡΌΣ ΕΞΩΤΕΡΙΚΌΣ ΕΝΏΝΕΙ, ΣΩΣΤΌΣ ΕΞΩΤΕΡΙΚΌΣ ΕΝΏΝΕΙ). Στο μέλλον εκδόσεις
από τον κεντρικό υπολογιστή SQL, το μη-Ansi ενώνει τους χειριστές δεν θα υποστηριχθεί ακόμη και στους τρόπους προς τα πίσω-συμβατότητας.
ή,
Msg 4147, επίπεδο 15, κράτος 1, γραμμή 3
Το μη-Ansi χρήσεων ερώτησης εξωτερικό ενώνει τους χειριστές (» *=» ή «=*»). Για να τρέξετε αυτήν την ερώτηση χωρίς τροποποίηση, παρακαλώ θέστε το επίπεδο συμβατότητας για την τρέχουσα βάση δεδομένων σε 80 ή χαμηλώστε, χρησιμοποιώντας την αποθηκευμένη διαδικασία sp_dbcmptlevel. Συστήνεται έντονα να ξαναγραφεί η ερώτηση χρησιμοποιώντας το Ansi εξωτερικό ενώνει τους χειριστές (ΑΡΙΣΤΕΡΌΣ ΕΞΩΤΕΡΙΚΌΣ ΕΝΏΝΕΙ, ΣΩΣΤΌΣ ΕΞΩΤΕΡΙΚΌΣ ΕΝΏΝΕΙ). Στο μέλλον οι εκδόσεις του κεντρικού υπολογιστή SQL, μη-Ansi ενώνουν τους χειριστές δεν θα υποστηριχθούν ακόμη και στους τρόπους προς τα πίσω-συμβατότητας.
Το λάθος συμβαίνει επειδή η Microsoft έχει ρίξει την υποστήριξη για και παλιό *= και =* εξωτερικό ενώνει τους χειριστές.
Προκειμένου να καθοριστεί το λάθος κεντρικών υπολογιστών SQL ανωτέρω, ο διοικητής DB πρέπει να θέσει το επίπεδο συμβατότητας βάσεων δεδομένων σε 80, ποιο αντίτιμο με τον κεντρικό υπολογιστή 2000 SQL ως προσωρινό workaround. Φυσικά, η καλύτερη λύση είναι να τροποποιηθούν οι δηλώσεις ή οι ερωτήσεις SQL ο κώδικας για να αφαιρέσει τον παλιό ενώνει τους χειριστές με το τρέχον τυποποιημένο SQL ενώνει τη σύνταξη.
Παραδείγματος χάριν, η ερώτηση SQL είναι κατωτέρω άκυρη:
ΕΠΙΛΕΞΤΕ o.name ΑΠΌ sys.objects ο, sys.views β ΌΠΟΥ o.object_id *= v.object_id
Και πρέπει να αντικατασταθεί με τον ακόλουθο κώδικα:
ΕΠΙΛΕΞΤΕ o.name ΑΠΌ sys.objects ο ΠΟΥ ΑΦΉΝΕΤΑΙ ΕΝΏΝΕΙ sys.views β o.object_id = v.object_id
Ή ακόλουθος βραχυνμένος ο εσωτερικός ενώνει τη δήλωση:
ΕΠΙΛΕΞΤΕ o.name ΑΠΌ sys.objects ο, sys.views β ΌΠΟΥ o.object_id = v.object_id
Για το διοικητή που δεν μπορεί να αλλάξει τον κώδικα, το ευκολότερο workaround πρόκειται να επανέλθει το επίπεδο συμβατότητας της βάσης δεδομένων προκειμένου να παρέχει ότι η οπίσθια συμβατότητα σε παλιό ενώνει. sp_dbcmptlevel οι αποθηκευμένες διαδικασίες (που αποδοκιμάζονται) ή το πραγματοποιώ συναλλαγές-SQL μπορούν να χρησιμοποιηθούν για να θέσουν ορισμένες (μερικώς, όχι όλες) συμπεριφορές βάσεων δεδομένων για να είναι συμβατές με τη προηγούμενη έκδοση του κεντρικού υπολογιστή SQL. Αυτό το άρθρο MSDN παρέχει την επισκόπηση σε ποιες συμπεριφορές αλλάζεται σε κάθε επίπεδο συμβατότητας.
Η έκδοση του κεντρικού υπολογιστή SQL που μπορεί να επανέλθει μπορεί να είναι μια από την ακόλουθη:
60 = κεντρικός υπολογιστής SQL 6.0
65 = κεντρικός υπολογιστής SQL 6.5
70 = κεντρικός υπολογιστής SQL 7.0
80 = κεντρικός υπολογιστής 2000 SQL
90 = κεντρικός υπολογιστής 2005 SQL
100 = κεντρικός υπολογιστής 2008 SQL
Σημείωση: Επίπεδο συμβατότητας 60, 65, και 70 όχι άλλο διαθέσιμα στον κεντρικό υπολογιστή 2008 SQL. Και η μελλοντική έκδοση του κεντρικού υπολογιστή SQL θα υποστηρίξει (2) την προγενέστερη έκδοση μόνο δύο της οπίσθιας συμβατότητας. Μια βάση δεδομένων που περιέχει μια συνταγμένη άποψη δεν μπορεί να αλλάξουν σε ένα επίπεδο συμβατότητας χαμηλότερο από 80. Επίσης παίρνει τη σημείωση ότι όταν τίθεται μια βάση δεδομένων τον τρόπο προς τα πίσω-συμβατότητας, μερικές από τις νέες λειτουργίες μπορούν να χαθούν, όπως η υποστήριξη SQL CLR και τα διαγράμματα SSMS για τη βάση δεδομένων. Εκτός από, ο τρόπος συμβατότητας έχει επιπτώσεις στις συμπεριφορές μόνο για τη διευκρινισμένη βάση δεδομένων, όχι για τον ολόκληρο κεντρικό υπολογιστή.
Βήματα για να αλλάξει και να θέσει το επίπεδο συμβατότητας μιας βάσης δεδομένων στον κεντρικό υπολογιστή SQL
Οι ακόλουθες εντολές SQL μπορούν να εκδοθούν στο παράθυρο ερώτησης διοικητικών στούντιο κεντρικών υπολογιστών SQL. Θυμηθείτε να εκτελέσετε πηγαίνει μετά από κάθε εντολή.
- Προαιρετικός: Θέστε τη βάση δεδομένων στον ενιαίο τρόπο πρόσβασης χρηστών:
ΑΛΛΑΞΤΕ ΤΗ ΒΑΣΗ ΔΕΔΟΜΈΝΩΝ DATABASE_NAME ΘΕΤΕΙ SINGLE_USER - Θέστε το επίπεδο συμβατότητας βάσεων δεδομένων σε μια από τη προηγούμενη έκδοση που δηλώνεται ανωτέρω:
Μέθοδος πραγματοποιώ συναλλαγές-SQL
ΑΛΛΑΞΤΕ ΤΗ ΒΑΣΗ ΔΕΔΟΜΈΝΩΝ DATABASE_NAME ΘΕΤΕΙ COMPATIBILITY_LEVEL = {80 | 90 | 100}Παραδείγματος χάριν,
ΑΛΛΑΞΤΕ ΤΗ ΒΑΣΗ ΔΕΔΟΜΈΝΩΝ MY_DB ΚΑΘΟΡΙΣΜΈΝΗ COMPATIBILITY_LEVEL = 80
sp_dbcmptlevel αποθηκευμένη μέθοδος διαδικασίας
EXEC sp_dbcmptlevel database_name, compatibility_level αξίαΠαραδείγματος χάριν,
EXEC sp_dbcmptlevel my_db, 90
- Προαιρετικός: Ξαναβάλτε τη βάση δεδομένων στον πολλών χρηστών τρόπο πρόσβασης:
ΑΛΛΑΞΤΕ ΤΗ ΒΑΣΗ ΔΕΔΟΜΈΝΩΝ DATABASE_NAME ΘΕΤΕΙ MULTI_USER
ΣΗΜΑΝΤΙΚΟΣ: Η σελίδα είναι μεταφρασμένη με υπολογιστή και παρεχόμενη «όπως είναι» χωρίς εξουσιοδότηση. Η αυτόματη μετάφραση μπορεί να είναι δύσκολο να καταλαβευτεί. Παρακαλώ αναφερθείτε στο αρχικό αγγλικό άρθρο όποτε είναι δυνατόν.
Σχετικά άρθρα
- Αποεγκαταστήστε και αφαιρέστε τις πολλαπλάσιες περιπτώσεις βάσεων δεδομένων κεντρικού υπολογιστή το 2005 της Microsoft SQL
- Δωρεάν κατέβασμα προσφορών της Microsoft DreamSpack και άδεια του οπτικού στούντιο 2008, του κεντρικού υπολογιστή 2003, του κεντρικού υπολογιστή 2005 SQL και περισσότεροι
- Μεταφορτώστε την αναπροσαρμογή για τα παράθυρα 7 και τον κεντρικό υπολογιστή το 2008 R2 βήτα (KB967062) για να καθορίσετε το κοινό ζήτημα συμβατότητας εφαρμογής
- Βελτιστοποιήστε τον κεντρικό υπολογιστή SQL το 2000, το 2005 ή το 2008 στο μεγάλο σύστημα RAM με το κλείσιμο των σελίδων στη μνήμη και το ΔΈΟ
- Συμβατότητα συστημάτων ελέγχου μέσω της έκδοσης κουτιών εργαλείων συμβατότητας νέας αίτησης της Microsoft 5.5
- Πώς να εκτελέσει τα σχέδιο στηρίγματα για τον κεντρικό υπολογιστή το 2005 SQL εκφράστε
- Το λάθος έχει εμφανιστεί εγκαθιστώντας μια σύνδεση στον κεντρικό υπολογιστή το 2005 SQL που δεν επιτρέπει τις τοπικές και μακρινές συνδέσεις
- Ο εικονικός κεντρικός υπολογιστής της Microsoft το 2005 R2 μεταφορτώνει διαθέσιμο δωρεάν
- Κωδικός πρόσβασης χρηστών βάσεων δεδομένων της Oracle αλλαγής
- Εικονικό SP1 κεντρικών υπολογιστών το 2005 της Microsoft R2 (Επιχειρηματική 'Έκδοση) άμεσο μεταφορτώνει τις συνδέσεις










































14η Αυγούστου 2009 03:17
[...] 7) Η ψηφιακή ζωή μου. Πώς να θέσει το επίπεδο συμβατότητας για τον κεντρικό υπολογιστή SQL βάση δεδομένων του 2008 ή του 2005. http://www.mydigitallife.info/2009/05/17/how-to-set-compatibility-level-for-sql-server-2008-or-2005-.. [...]