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

Συμπτώματα

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

Για παράδειγμα, ας υποθέσουμε ότι μια στήλη που ονομάζεται "στήλη1" περιλαμβάνεται στο συμπλέγματος ή το μοναδικό ευρετήριο. Όταν η τιμή της στήλης αλλάζει από μεγαλύτερη σε μικρότερη τιμή (όπως η αλλαγή της τιμής από 20 σε 16), ο πλαϊνός πίνακας παρακολούθησης αλλαγών λαμβάνει τη λειτουργία εισαγωγής πριν από τη λειτουργία διαγραφής. Για παράδειγμα, η λειτουργία εισαγωγής εγγραφής γραμμής του αρχείου καταγραφής συναλλαγών λαμβάνεται πριν από τη λειτουργία διαγραφής γραμμής ή το "I" πριν από το "D".

Sys_change_version

sys_change_create_version

sys_change_operation

sys_change_column

sys_change_context

PK_column

1116

19

I

NULL

NULL

5639485628

1116

20

D

NULL

NULL

5639485628


Όταν η τιμή στήλης αλλάζει από μικρότερη σε μεγαλύτερη τιμή (όπως η αλλαγή της τιμής από 16 σε 20), το "D" εισάγεται πριν από το "I".

Sys_change_version

sys_change_create_version

sys_change_operation

sys_change_column

sys_change_context

PK_column

1126

32

D

NULL

NULL

5639485628

1126

33

I

NULL

NULL

5639485628

Αιτία

Αυτό το πρόβλημα παρουσιάζεται λόγω εσφαλμένης ταξινόμησης μεταξύ ζευγών delete/insert στον πλευρικό πίνακα παρακολούθησης αλλαγών.

Επίλυση

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

         Συγκεντρωτική ενημέρωση 8 για SQL Server 2017

         Συγκεντρωτική ενημέρωση 9 για SQL Server 2016 Service Pack 1

Συγκεντρωτική ενημέρωση 12 για SQL Server 2014 SP2

Πληροφορίες για τις εκδόσεις SQL Server

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

Τελευταία συγκεντρωτική ενημέρωση για SQL Server 2017

Πιο πρόσφατη δομή για SQL Server 2016

Τελευταία συγκεντρωτική ενημέρωση για SQL Server 2014

Κατάσταση

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

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

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

Όταν η συνάρτηση CHANGETABLE καλείται για την απαρίθμηση των αλλαγών, αυτές οι καταχωρήσεις ταξινομούνται κατά τιμές πρωτεύοντος κλειδιού και, στη συνέχεια, οι λειτουργίες συναθροίζονται. Εάν η ενημέρωση εισαγάγει μια χαμηλότερη τιμή, εκτελείται πρώτα μια λειτουργία "I" στον πλευρικό πίνακα, ακολουθούμενη από μια λειτουργία "D". Αυτό προκαλεί την επιστροφή μιας εσφαλμένης λειτουργίας για αυτήν τη γραμμή. Αυτό συμβαίνει επειδή το "I" που ακολουθείται από το "D" αθροίζεται ως "D".

Επειδή μόνο οι τιμές του πρωτεύοντος κλειδιού διατηρούνται στους πλαϊνούς πίνακες, δεν είναι απαραίτητο να έχετε δύο ξεχωριστές καταχωρήσεις. Αυτό ισχύει εφόσον η στήλη πρωτεύοντος κλειδιού δεν ενημερώνεται.

Αυτό το πρόβλημα έχει διορθωθεί για μη κύριες στήλες μοναδικών τιμών. Σε αυτή την περίπτωση, όταν παρουσιάζεται η ενημέρωση, εισάγεται μόνο μία γραμμή με το "U" ως λειτουργία ενημέρωσης αντί για δύο καταχωρήσεις που έχουν τα γράμματα "D" και "I".

Αναφορές

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

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

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

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

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

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

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

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

×