KB3136496 - ΕΠΙΔΙΌΡΘΩΣΗ: Παρουσιάζεται παραβίαση πρόσβασης όταν ένα ερώτημα αναφέρεται σε μια συνάρτηση SQLCLR μέσω συνωνύμου στο SQL Server 2014 και 2016

Ισχύει για
SQL 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 Standard - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Συμπτώματα

Εξετάστε το ακόλουθο σενάριο:

  • Υπάρχει μια συνάρτηση SQLCLR που δηλώνεται ως "ντετερμινιστική" και η συνάρτηση μπορεί να χρησιμοποιηθεί για τη βελτιστοποίηση "αντικατάσταση με σταθερά".
  • Υπάρχει ένα συνώνυμο που παραπέμπει στη συνάρτηση SQLCLR.
  • Μια συνάρτηση με τιμή πίνακα (TVF) αναφέρεται στη συνάρτηση SQLCLR μέσω του συνωνύμου.

Σε αυτό το σενάριο, όταν μια εφαρμογή υποβάλλει ερώτημα σε αυτό το TVF, ενδέχεται να παρουσιαστεί παραβίαση πρόσβασης και ενδέχεται να λάβετε ένα μήνυμα λάθους παρόμοιο με το ακόλουθο:

Σημείωση

  • Μήνυμα 0, Επίπεδο 11, Κατάσταση 0, Γραμμή 14
  • Παρουσιάστηκε σοβαρό σφάλμα στην τρέχουσα εντολή. Τα αποτελέσματα, εάν υπάρχουν, θα πρέπει να απορρίπτονται.

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

Επίλυση

Πληροφορίες Service Pack για SQL Server

Αυτό το πρόβλημα διορθώνεται στο ακόλουθο service pack για SQL Server:

Service Pack 2 για SQL Server 2016

Service Pack 3 για SQL Server 2014

Σχετικά με τα service pack για SQL Server:

Τα service pack είναι αθροιστικά. Κάθε νέο service pack περιέχει όλες τις ενημερώσεις κώδικα που βρίσκονται σε προηγούμενα service pack, μαζί με τυχόν νέες ενημερώσεις κώδικα. Η σύσταση μας είναι να εφαρμόσετε το πιο πρόσφατο service pack και την πιο πρόσφατη αθροιστική ενημέρωση για αυτό το service pack. Δεν χρειάζεται να εγκαταστήσετε ένα προηγούμενο service pack πριν να εγκαταστήσετε το πιο πρόσφατο service pack. Χρησιμοποιήστε τον Πίνακα 1 στο παρακάτω άρθρο για να βρείτε περισσότερες πληροφορίες σχετικά με το πιο πρόσφατο service pack και την πιο πρόσφατη αθροιστική ενημέρωση.

Πώς μπορείτε να καθορίσετε την έκδοση, την έκδοση και το επίπεδο ενημέρωσης του SQL Server και των στοιχείων του

Κατάσταση

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

Παραπομπές

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