Applies ToSQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Express - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2016 Web - duplicate (do not use)

Σύνοψη

Αυτή η ενημέρωση παρουσιάζει ένα νέο όρισμα υπόδειξη ερωτήματος, Χρησιμοποιήστε την υπόδειξη, η οποία σας επιτρέπει να οδηγήσετε τη βελτιστοποίηση ερωτημάτων χωρίς αυξημένα διαπιστευτήρια ή χωρίς να είστε μέλος του ρόλου του διακομιστή διαχειριστή. Η σύνταξη αυτής της νέας υπόδειξης ερωτήματος μοιάζει με την εξής:

<query_hint > ::={USE HINT(N'key' [ [, ]...n ])}

Αυτή η ενημέρωση παρουσιάζει επίσης τις ακόλουθες επιλογές υπόδειξης που μπορούν να χρησιμοποιηθούν με το όρισμα " χρήση υπόδειξης ".

Επιλογή

Αντίστοιχη σημαία ανίχνευσης

Περιγραφή

Ισχύει για

ASSUME_JOIN_PREDICATE_DEPENDS_ON_FILTERS

TF 9476

Προκαλεί τον SQL Server να δημιουργήσει ένα σχέδιο ερωτήματος χρησιμοποιώντας την απλή υπόθεση περιορισμού αντί για την προεπιλεγμένη υπόθεση περιορισμού βάσης για τους συνδέσμους, κάτω από τη βελτιστοποίηση ερωτήματος Μοντέλο εκτίμησης προτεραιότητα του SQL Server 2014 (12. x) ή νεότερη έκδοση.

ASSUME_MIN_SELECTIVITY_FOR_FILTER_ESTIMATES

TF 4137

Προκαλεί τον SQL Server να δημιουργήσει ένα πρόγραμμα χρησιμοποιώντας την ελάχιστη επιλεκτικότητα κατά την εκτίμηση και τα κατηγόρημα για τα φίλτρα για να λογοδοτήσουν για συσχέτιση. Αυτό το όνομα υπόδειξης είναι παράλληλο με σημαία παρακολούθησης 4137 όταν χρησιμοποιείται με το μοντέλο εκτίμησης προτεραιότητα του SQL server 2012 (11. x) και παλαιότερες εκδόσεις και έχει παρόμοιο αποτέλεσμα όταν χρησιμοποιείται η σημαία παρακολούθησης 9471 με το μοντέλο εκτίμησης προτεραιότητα του SQL Server 2014 (12. x) ή νεότερη έκδοση.

DISABLE_BATCH_MODE_ADAPTIVE_JOINS

Απενεργοποιεί τους προσαρμοζόμενους συνδέσμους για τη λειτουργία δέσμης.

Ξεκινώντας από τον SQL Server 2017

DISABLE_BATCH_MODE_MEMORY_GRANT_FEEDBACK

Απενεργοποιεί τα σχόλια εκχώρησης μνήμης λειτουργίας δέσμης.

Ξεκινώντας από τον SQL Server 2017

DISABLE_DEFERRED_COMPILATION_TV

Απενεργοποιεί τη συλλογή μεταβλητών πίνακα που αναβλήθηκε.

Ξεκινώντας από τον SQL Server 2019

DISABLE_INTERLEAVED_EXECUTION_TVF

Απενεργοποιεί την εκτέλεση με την οποία έχει διαφύγει η εκτέλεση για συναρτήσεις πολλών τιμών πίνακα-τιμών.

Ξεκινώντας από τον SQL Server 2017

DISABLE_OPTIMIZED_NESTED_LOOP

TF 2340

Καθοδηγεί τον επεξεργαστή ερωτημάτων να μην χρησιμοποιήσει μια λειτουργία sort (είδος δέσμης) για τους συνδέσμους βελτιστοποιημένων ένθετων βρόχων κατά τη δημιουργία ενός σχεδίου ερωτήματος.

DISABLE_OPTIMIZER_ROWGOAL

TF 4138

Προκαλεί τον SQL Server να δημιουργήσει ένα πρόγραμμα που δεν χρησιμοποιεί τροποποιήσεις στόχου γραμμής με ερωτήματα που περιέχουν αυτές τις λέξεις-κλειδιά:

  • ΑΡΧΉ

  • OPTION (ΓΡΉΓΟΡΟ N)

  • ΣΤΟ

  • Υπάρχει

DISABLE_PARAMETER_SNIFFING

TF 4136

Καθοδηγεί τη βελτιστοποίηση ερωτημάτων να χρησιμοποιεί τη μέση κατανομή δεδομένων κατά τη μεταγλώττιση ενός ερωτήματος με μία ή περισσότερες παραμέτρους. Αυτή η οδηγία κάνει το πρόγραμμα ερωτήματος ανεξάρτητο στην τιμή παραμέτρου που χρησιμοποιήθηκε για πρώτη φορά κατά τη μεταγλώττιση του ερωτήματος. Χρησιμοποιήστε αυτήν την υπόδειξη για να παρακάμψετε τη ρύθμιση ρύθμισης παραμέτρων εύρους βάσης δεδομένων PARAMETER_SNIFFING = off.

DISABLE_ROW_MODE_MEMORY_GRANT_FEEDBACK

Απενεργοποιεί τη μνήμη κατάστασης λειτουργίας γραμμής για την εκχώρηση σχολίων.

Ξεκινώντας από τον SQL Server 2019

DISABLE_TSQL_SCALAR_UDF_INLINING

Απενεργοποιεί την ευθυγράμμιση του UDF με ανυσμάτων.

Ξεκινώντας από τον SQL Server 2019

DISALLOW_BATCH_MODE

Απενεργοποιεί την εκτέλεση της λειτουργίας δέσμης.

Ξεκινώντας από τον SQL Server 2019

ENABLE_HIST_AMENDMENT_FOR_ASC_KEYS

TF 4139

Επιτρέπει την αυτόματη δημιουργία γρήγορων στατιστικών στοιχείων (τροποποίηση ιστογράμματος) για οποιαδήποτε κύρια στήλη ευρετηρίου για την οποία απαιτείται εκτίμηση της προτεραιότητα. Το ιστόγραμμα που χρησιμοποιείται για να εκτιμηθεί η προτεραιότητα θα προσαρμοστεί στο χρόνο μεταγλώττισης του ερωτήματος για να λογοδοτήσει για την πραγματική μέγιστη ή ελάχιστη τιμή αυτής της στήλης.

ENABLE_QUERY_OPTIMIZER_HOTFIXES

TF 4199

Ενεργοποιεί τις επείγουσες επιδιορθώσεις του Query Optimizer (αλλαγές που κυκλοφόρησαν στις αθροιστικές ενημερώσεις και Service Pack του SQL Server). Χρήση αυτής της υπόδειξης για παράκαμψη Ρύθμιση παραμέτρων εύρους δεδομένων QUERY_OPTIMIZER_HOTFIXES = on.

FORCE_DEFAULT_CARDINALITY_ESTIMATION

TF 9481

Επιβάλλει τη βελτιστοποίηση ερωτημάτων για χρήση Μοντέλο εκτίμησης προτεραιότητα που αντιστοιχεί στο τρέχον επίπεδο συμβατότητας βάσης δεδομένων. Χρήση αυτής της υπόδειξης για παράκαμψη Ρύθμιση παραμέτρων εύρους δεδομένων LEGACY_CARDINALITY_ESTIMATION = on.

FORCE_LEGACY_CARDINALITY_ESTIMATION

TF 9481

Επιβάλλει τη βελτιστοποίηση ερωτημάτων για χρήση Μοντέλο εκτίμησης προτεραιότητα του SQL Server 2012 (11. x) και παλαιότερων εκδόσεων. Χρησιμοποιήστε αυτήν την υπόδειξη για να παρακάμψετε τη ρύθμιση ρύθμισης παραμέτρων εύρους βάσης δεδομένων LEGACY_CARDINALITY_ESTIMATION = on.

QUERY_OPTIMIZER_COMPATIBILITY_LEVEL_n

Επιβάλλει τη συμπεριφορά βελτιστοποίησης ερωτήματος σε επίπεδο ερωτήματος. Αυτή η συμπεριφορά συμβαίνει ως εάν το ερώτημα έχει μεταγλωττιστεί με επίπεδο συμβατότητας βάσης δεδομένων n, όπου n είναι ένα υποστηριζόμενο επίπεδο συμβατότητας βάσης δεδομένων. Ανατρέξτε στην ενότηταsys.dm_exec_valid_use_hints για μια λίστα με τις τρέχουσες υποστηριζόμενες τιμές για το n.

Ξεκινώντας από τον SQL Server 2017 (14. x) ΝΜ

Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα υποδείξεις (Transact-SQL)-Query.

Περισσότερες πληροφορίες

Αυτή η ενημέρωση περιλαμβάνεται στο Service Pack 1 για τον SQL Server 2016.

 

Κάθε νέα δομή για τον SQL Server 2016 περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις επιδιορθώσεις ασφαλείας που συμπεριλήφθηκαν στην προηγούμενη δομή. Συνιστάται να εγκαταστήσετε την πιο πρόσφατη έκδοση για τον SQL Server 2016.

Τα σενάρια στα οποία πρέπει να υπονοηθεί η συμπεριφορά του SQL Server Query Optimizer (QO) είναι αρκετά συνηθισμένα και παραδοσιακά αντιμετωπίζονται με τη χρήση αρκετών (τεκμηριωμένων και μη εγγράφων) σημαιών ανίχνευσης. Ωστόσο, όταν οι σημαίες εντοπισμού καθοριστούν καθολικά, μπορεί να έχουν δυσμενείς επιπτώσεις σε άλλους φόρτους εργασίας. Επιπλέον, η ενεργοποίηση τους ανά περίοδο λειτουργίας δεν είναι πρακτική με τις υπάρχουσες εφαρμογές και η ενεργοποίησή τους ανά ερώτημα με το Option QUERYTRACEON απαιτεί συμμετοχή στο ρόλο του σταθερού διακομιστή του διαχειριστής. (Παρόλο που μπορείτε να αντιμετωπίσετε αυτήν τη συμπεριφορά χρησιμοποιώντας έναν οδηγό σχεδίου ή μια αποθηκευμένη διαδικασία, απαιτούνται ακόμα αυξημένα διαπιστευτήρια.) Οι σημαίες ανίχνευσης χρησιμοποιούνται για την προσωρινή ρύθμιση συγκεκριμένων χαρακτηριστικών διακομιστή ή για την απενεργοποίηση μιας συγκεκριμένης συμπεριφοράς, μπορεί να είναι δύσκολο να τα διαχειριστείτε και να τα καταλάβετε. Για πληροφορίες σχετικά με τις σημαίες ανίχνευσης, ανατρέξτε στο θέμα σημαίες ανίχνευσης (Transact-SQL) στην τοποθεσία Web του Microsoft Developer Network (MSDN).

Αναφορές

Μάθετε περισσότερα σχετικά με την ορολογία που χρησιμοποιεί η Microsoft για την περιγραφή ενημερώσεων λογισμικού.

Χρειάζεστε περισσότερη βοήθεια;

Θέλετε περισσότερες επιλογές;

Εξερευνήστε τα πλεονεκτήματα της συνδρομής, περιηγηθείτε σε εκπαιδευτικά σεμινάρια, μάθετε πώς μπορείτε να προστατεύσετε τη συσκευή σας και πολλά άλλα.

Οι κοινότητες σάς βοηθούν να κάνετε και να απαντάτε σε ερωτήσεις, να δίνετε σχόλια και να ακούτε από ειδικούς με πλούσια γνώση.