Μετάβαση στο κύριο περιεχόμενο
Υποστήριξη
Είσοδος με Microsoft
Είσοδος ή δημιουργία λογαριασμού.
Γεια σας,
Επιλέξτε διαφορετικό λογαριασμό.
Έχετε πολλούς λογαριασμούς
Επιλέξτε τον λογαριασμό με τον οποίο θέλετε να εισέλθετε.

Συμπτώματα

Αφού εφαρμόσετε SQL Server 2016 Service Pack 3 (SP3) ή SQL Server 2017 Cumulative Update 26 (CU26) και εκτελέσετε μια αποθηκευμένη διαδικασία εκκαθάρισης παρακολούθησης αλλαγών, sp_flush_commit_table_on_demand ή sp_flush_CT_internal_table_on_demandή εάν εκτελείται παρακολούθηση αυτόματης εκκαθάρισης αλλαγών, λαμβάνετε το ακόλουθο μήνυμα σφάλματος:

Msg 8114, Level 16, State 1, Procedure sp_add_ct_history, Line LineNumber

Error converting data type numeric to int.

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

DateTime spidNum     Error: 22122, Severity: 16, State: 1.

DateTime spidNum     Change Tracking autocleanup failed on side table of "table_name". If the failure persists, use sp_flush_CT_internal_table_on_demand to clean up expired records from its side table.

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

Αιτία

SQL Server 2016 SP3 και SQL Server 2017 CU26 παρουσίασε ένα νέο πίνακα, dbo. MSchange_tracking_historyκαι μια νέα αποθηκευμένη διαδικασία, sys.sp_add_ct_history, για να καταγράψετε το ιστορικό της εκκαθάρισης παρακολούθησης αλλαγών. Αυτός ο πίνακας έχει μια στήλη, cleanup_version, που δηλώνεται τη συγκεκριμένη στιγμή ως τύπος δεδομένων INT. Η sys.sp_add_ct_history αποθηκευμένη διαδικασία έχει μια παράμετρο, @cleanup_version,που δηλώνεται επίσης ως INT. Σε ένα πολυάσχολο σύστημα που χρησιμοποιεί παρακολούθηση αλλαγών, η έκδοση εκκαθάρισης μπορεί να περάσει από πολλές περιοχές INT σε ένα δεδομένο χρονικό διάστημα. Στη συνέχεια, όταν εκτελείται η εκκαθάριση παρακολούθησης αλλαγών, θα προσπαθήσει να εισαγάγει μια τιμή BIGINT στη στήλη INT αυτού του πίνακα. Αυτό δημιουργεί το σφάλμα που περιγράφεται στην ενότητα "Συμπτώματα".

Επίλυση

Αυτό το πρόβλημα έχει διορθωθεί στις ακόλουθες αθροιστικές ενημερώσεις για SQL Server:

Αθροιστική ενημέρωση 27 για SQL Server 2017

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

Πιο πρόσφατη αθροιστική ενημέρωση για SQL Server 2017

Πληροφορίες άμεσης επιδιόρθωσης κατ' απαίτηση:

Αυτό το πρόβλημα έχει διορθωθεί στην παρακάτω άμεση επιδιόρθωση κατ' απαίτηση για SQL Server:

Λύση

Εάν αντιμετωπίσετε αυτό το πρόβλημα, επαναφέρετε την προηγούμενη δομή καταργώντας την εγκατάσταση SQL Server 2016 SP3 ή SQL Server 2017 CU26. Η Microsoft διερευνά ενεργά αυτό το πρόβλημα και θα ενημερώσει αυτό το άρθρο με περισσότερες πληροφορίες και πρόσθετες οδηγίες όταν αυτές οι πληροφορίες είναι διαθέσιμες.

Κατάσταση

Η Microsoft έχει επιβεβαιώσει ότι αυτό αποτελεί πρόβλημα στα προϊόντα της Microsoft που παρατίθενται στην ενότητα "Ισχύει για".

Αναφορές

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

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

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

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

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

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

Πόσο ικανοποιημένοι είστε με τη γλωσσική ποιότητα;
Τι επηρέασε την εμπειρία σας;
Πατώντας "Υποβολή" τα σχόλια σας θα χρησιμοποιηθούν για τη βελτίωση των προϊόντων και των υπηρεσιών της Microsoft. Ο διαχειριστής IT θα έχει τη δυνατότητα να συλλέξει αυτά τα δεδομένα. Δήλωση προστασίας προσωπικών δεδομένων.

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

×