Συμπτώματα
Όταν εκτελείτε ένα ερώτημα που εισάγει το αποτέλεσμα του sys.database_scoped_configurations σε μια μεταβλητή πίνακα ή έναν προσωρινό πίνακα στο Microsoft SQL Server 2016 και, στη συνέχεια, επιλέγετε από αυτήν τη μεταβλητή πίνακα ή τον προσωρινό πίνακα, όπως φαίνεται στο παρακάτω παράδειγμα, ενδέχεται να παρατηρήσετε ότι υπάρχει μόνο μία καταχώρηση για κάθε βάση δεδομένων.
DROP TABLE ΕΆΝ ΥΠΆΡΧΕΙ #h
CREATE TABLE #h(configuration_id INT, name sysname, value SQL_VARIANT value_for_secondary SQL_VARIANT)
INSERT INTO #h(configuration_id; όνομα; τιμή;value_for_secondary)
SELECT * FROM sys.database_scoped_configurations D'
SELECT * FROM #h H
ή
DECLARE @database\_scoped\_configurations TABLE(x INT);
ΕΙΣΑΓΩΓΉ ΣΕ @database\_scoped\_configurations
ΕΠΙΛΈΞΤΕ configuration_id
ΑΠΌ sys.database_scoped_configurations;
ΕΠΙΛΈΞΤΕ * ΑΠΌ @database\_scoped\_configurations
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα ζήτημα που αφορά τα προϊόντα της Microsoft που παρατίθενται στην ενότητα "Ισχύει για".
Επίλυση
Αυτό το πρόβλημα διορθώνεται στην ακόλουθη αθροιστική ενημέρωση για SQL Server:
Πληροφορίες σχετικά με τις συγκεντρωτικές ενημερώσεις για SQL Server:
Κάθε νέα αθροιστική ενημερωμένη έκδοση για SQL Server περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ενημερώσεις κώδικα ασφαλείας που συμπεριλήφθηκαν με την προηγούμενη αθροιστική ενημερωμένη έκδοση. Δείτε τις πιο πρόσφατες αθροιστικές ενημερώσεις για SQL Server:
Λύση
Για να επιλύσετε αυτό το ζήτημα, μπορείτε να προσθέσετε έναν όρο TOP στο τμήμα SELECT του ένθετου για να λάβετε το σωστό αποτέλεσμα. Ακολουθεί ένα παράδειγμα:
ΔΗΛΩΣΗ @database_scoped_configurations TABLE(x INT);
ΕΙΣΑΓΩΓΉ ΣΕ @database_scoped_configurations
ΕΠΙΛΟΓΉ ΠΡΏΤΩΝ 100 configuration_id
ΑΠΌ sys.database_scoped_configurations
Παραπομπές
Ενημερωθείτε για την ορολογία που χρησιμοποιεί η Microsoft για να περιγράφει τις ενημερώσεις λογισμικού.