Πώς να θέσει το επίπεδο συμβατότητας για τον κεντρικό υπολογιστή 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. Θυμηθείτε να εκτελέσετε πηγαίνει μετά από κάθε εντολή.

  1. Προαιρετικός: Θέστε τη βάση δεδομένων στον ενιαίο τρόπο πρόσβασης χρηστών:

    ΑΛΛΑΞΤΕ ΤΗ ΒΑΣΗ ΔΕΔΟΜΈΝΩΝ DATABASE_NAME ΘΕΤΕΙ SINGLE_USER

  2. Θέστε το επίπεδο συμβατότητας βάσεων δεδομένων σε μια από τη προηγούμενη έκδοση που δηλώνεται ανωτέρω:

    Μέθοδος πραγματοποιώ συναλλαγές-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

  3. Προαιρετικός: Ξαναβάλτε τη βάση δεδομένων στον πολλών χρηστών τρόπο πρόσβασης:

    ΑΛΛΑΞΤΕ ΤΗ ΒΑΣΗ ΔΕΔΟΜΈΝΩΝ DATABASE_NAME ΘΕΤΕΙ MULTI_USER

ΣΗΜΑΝΤΙΚΟΣ: Η σελίδα είναι μεταφρασμένη με υπολογιστή και παρεχόμενη «όπως είναι» χωρίς εξουσιοδότηση. Η αυτόματη μετάφραση μπορεί να είναι δύσκολο να καταλαβευτεί. Παρακαλώ αναφερθείτε στο αρχικό αγγλικό άρθρο όποτε είναι δυνατόν.


Μια απάντηση «πώς να θέσει το επίπεδο συμβατότητας για τον κεντρικό υπολογιστή SQL βάση δεδομένων του 2008 ή του 2005»

  1. Microsoft - κεντρικός υπολογιστής SQL - στρατηγικές για το ζήτημα του αποδοκιμασμένου ίχνους SQL «Ντάνιελ Adeniji's
    14η Αυγούστου 2009 03:17
    1

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

Αφήστε μια απάντηση

Μπορείτε να χρησιμοποιήσετε αυτές τις ετικέττες: <a href= "" title= "" > <abbr title= "" > <acronym title= "" > <b> <blockquote cite= "" > <cite> <code> <del datetime= "" > <em> <i> <q cite= "" > <strike> <strong>

Προσυπογράψτε στο χαρακτηριστικό γνώρισμα σχολίων έχει τεθεί εκτός λειτουργίας. Για να λάβετε την ανακοίνωση των πιό πρόσφατων σχολίων που ταχυδρομούνται, προσυπογράψτε στην ψηφιακή ζωή μου την τροφή ή τον κατάλογο σχολίων RSS για να λάβει τα νέα σχόλια στην καθημερινή αφομοίωση ηλεκτρονικού ταχυδρομείου.
Custom Search

Νέα άρθρα

Εισερχόμενοι όροι αναζήτησης για το άρθρο

το επίπεδο συμβατότητας κεντρικών υπολογιστών SQL - τρόπος συμβατότητας SQL 2008 - τρόπος συμβατότητας κεντρικών υπολογιστών το 2008 SQL - επίπεδο συμβατότητας SQL - κεντρικός υπολογιστής επιπέδων SQL συμβατότητας - τρόπος συμβατότητας του 2005 κεντρικών υπολογιστών 2008 SQL - η επιλογή 100 για τον τρόπο συμβατότητας δεν είναι υποστηριγμένος - τρόπος συμβατότητας SQL - τρόπος που 80 συμβατότητας SQL - συμβατότητα SQL 2008 - το μη-Ansi χρήσεων ερώτησης εξωτερικό ενώνουν τους χειριστές ή. για να τρέξει αυτήν την ερώτηση χωρίς τροποποίηση - ρύθμιση συμβατότητας κεντρικών υπολογιστών 2008 SQL - το Ansi *= «τρόπου συμβατότητας SQL » - «σαφής» συμβατότητα «κεντρικός υπολογιστής 2008» κεντρικών υπολογιστών 2005 SQL - μη εξωτερικό ενώνει τους χειριστές - οπίσθια συμβατότητα του 2008 ως του 2005 - αλλάζει το επίπεδο συμβατότητας βάσεων δεδομένων compatibility_level - Compatibilty στον κεντρικό υπολογιστή SQL - στον κεντρικό υπολογιστή το 2008 SQL - κεντρικός υπολογιστής 2008 τρόπου SQL συμβατότητας - πώς να αφαιρέσει την ανακοίνωση συμβατότητας προγράμματος για τον κεντρικό υπολογιστή το 2008 SQL - πώς να αλλάξει τη συμβατότητα 2005 κεντρικών υπολογιστών 2008 SQL - πώς να ελέγξει οι πολλαπλάσιες βάσεις δεδομένων SQL επιπέδων ότι συμβατότητας - πώς να θέσει τον τρόπο κα-SQL συμβατότητας - πώς να θέσουν τον κεντρικό υπολογιστή το 2005 τρόπου SQL προς τα πίσω-συμβατότητας - ενώστε τα παραδείγματα του κεντρικού υπολογιστή το 2008 SQL - ΑΡΙΣΤΕΡΆ ΕΝΏΝΟΥΝ μη το Ansi στον ΚΕΝΤΡΙΚΌ ΥΠΟΛΟΓΙΣΤΉ το 2008 SQL - τρέχοντας κεντρικός υπολογιστής 2008 SQL στον τρόπο συμβατότητας 2005 - τρόπος SQL - σύνολο συμβατότητας χειρογράφων compatibilitylevel - καθορισμένος τρόπος συμβατότητας κεντρικών υπολογιστών SQL - καθορισμένη τρέχουσα βάση δεδομένων Compatability βάσεων δεδομένων - καθορισμένος κεντρικός υπολογιστής το 2008 SQL στον τρόπο κεντρικών υπολογιστών το 2000 SQL - επίπεδο συμβατότητας κεντρικών υπολογιστών SQL τίθεται το 2005 μετά από τη βελτίωση - SQL το 2008 προς τα πίσω - SQL 2008 προς τα πίσω συμβατό SQL 2000 - sqlserver έθεσε - επίπεδο 80 compatability SQL - τον τρόπο συμβατότητας SQL το 2008 - ΚΑΘΟΡΙΣΜΈΝΟ επίπεδο συμβατότητας ΒΆΣΕΩΝ ΔΕΔΟΜΈΝΩΝ κεντρικών υπολογιστών SQL - κεντρικός υπολογιστής SQL + για να τρέξει αυτήν την ερώτηση χωρίς τροποποίηση, παρακαλώ θέστε το comp»: - compatibilty - σύνολο 80 κεντρικών υπολογιστών 2008 SQL - SQL 2008 mydigitallife SQL 2008 - κεντρικός υπολογιστής το 2000 SQL εξωτερικό ενώστε το compatiability - τρόπος 2008 συμβατότητας SQL - το μη-Ansi κεντρικών υπολογιστών το 2008 SQL ενώνει - τρόπος συμβατότητας αλλαγής κεντρικών υπολογιστών SQL - το μη-Ansi χρήσεων ερώτησης εξωτερικό ενώνει τους χειριστές («*=» ή «=*»). Για να τρέξετε αυτήν την ερώτηση χωρίς τροποποίηση, παρακαλώ θέστε το επίπεδο συμβατότητας για την τρέχουσα βάση δεδομένων σε 80 ή χαμηλώστε, χρησιμοποιώντας την αποθηκευμένη διαδικασία sp_dbcmptlevel - για να τρέξει αυτήν την ερώτηση χωρίς τροποποίηση, παρακαλώ θέστε το επίπεδο συμβατότητας για την τρέχουσα βάση δεδομένων σε 80 ή χαμηλώστε, χρησιμοποιώντας την αποθηκευμένη διαδικασία sp_dbcmptlevel. Συστήνεται έντονα να ξαναγραφεί η ερώτηση χρησιμοποιώντας το Ansi εξωτερικό ενώνει τους χειριστές (ΑΡΙΣΤΕΡΌΣ ΕΞΩΤΕΡΙΚΌΣ ΕΝΏΝΕΙ, ΣΩΣΤΌ OUTE -