Συμπτώματα
Ας υποθέσουμε ότι έχετε έναν πίνακα με διαμερίσματα που περιέχει μια υπολογιζόμενη στήλη διαμέρισης που έχει επισημανθεί ως PERSISTED στο Microsoft SQL Server 2014 ή 2016 και, στη συνέχεια, δημιουργείτε ξανά το διαμέρισμα online. Σε αυτήν την περίπτωση, λαμβάνετε το ακόλουθο μήνυμα λάθους:
Σημείωση
Msg 4819, Επίπεδο 16, Κατάσταση 1, LineNumber
Δεν είναι δυνατή η μαζική φόρτωση. Η μαζική ροή δεδομένων καθορίστηκε εσφαλμένα ως ταξινομημένη ή τα δεδομένα παραβιάζουν έναν περιορισμό μοναδικότητας που επιβάλλεται από τον πίνακα προορισμού. Εσφαλμένη σειρά ταξινόμησης για τις ακόλουθες δύο γραμμές: πρωτεύον κλειδί πρώτης γραμμής: (RowNumber, DateTime), πρωτεύον κλειδί δεύτερης γραμμής: (RowNumber, DateTime).
Η δήλωση τερματίστηκε.
Επίλυση
Για να ενεργοποιήσετε αυτήν την επείγουσα επιδιόρθωση, πρέπει να ενεργοποιήσετε τη σημαία παρακολούθησης (TF) 176. Αυτό το πρόβλημα διορθώνεται στις ακόλουθες αθροιστικές ενημερώσεις για SQL Server:
Αθροιστική ενημερωμένη έκδοση 7 για SQL Server 2016 SP1
Αθροιστική ενημερωμένη έκδοση 4 για SQL Server 2016
Αθροιστική ενημερωμένη έκδοση 6 για SQL Server 2014 SP2
Πληροφορίες σχετικά με τις αθροιστικές ενημερώσεις για SQL Server
Κάθε νέα αθροιστική ενημερωμένη έκδοση για SQL Server περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ενημερώσεις κώδικα ασφαλείας που συμπεριλήφθηκαν με την προηγούμενη αθροιστική ενημερωμένη έκδοση. Δείτε τις πιο πρόσφατες αθροιστικές ενημερώσεις για SQL Server:
Τελευταία αθροιστική ενημέρωση για το SQL Server 2016
Τελευταία αθροιστική ενημερωμένη έκδοση για το SQL Server 2014
Λύση
Για να επιλύσετε αυτό το πρόβλημα, χρησιμοποιήστε τη συνάρτηση SORT_IN_TEMPDB=ON στο ερώτημα αναδόμησης.
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα ζήτημα που αφορά τα προϊόντα της Microsoft που παρατίθενται στην ενότητα "Ισχύει για".
Παραπομπές
Ενημερωθείτε για την ορολογία που χρησιμοποιεί η Microsoft για να περιγράφει τις ενημερώσεις λογισμικού.