FIX: قد تتلقي نتائج خاطئه عند الاستعلام database_scoped_configurations في SQL Server 2016

ينطبق على: SQL Server 2016 DeveloperSQL Server 2016 EnterpriseSQL Server 2016 Enterprise Core

الأعراض


عند تشغيل استعلام الذي يقوم بادراج إخراجdatabase_scoped_configurations إلى جدول متغير أو جدول مؤقت في Microsoft SQL Server 2016 ، ومن ثم حدد من هذا الجدول متغير أو مؤقتجدول كما هو موضح في المثال أدناه ، قد تلاحظ وجود إدخال واحد فقط لكل قاعده بيانات.
DROP TABLE IF EXISTS #h
CREATE TABLE #h(configuration_id INT, name sysname, value SQL_VARIANT, value_for_secondary SQL_VARIANT)
INSERT INTO #h(configuration_id, name, value,value_for_secondary)
SELECT * FROM sys.database_scoped_configurations D'
SELECT * FROM #h H
او
DECLARE @database_scoped_configurations TABLE(x INT);
INSERT INTO @database_scoped_configurations
SELECT configuration_id
FROM sys.database_scoped_configurations;
SELECT * FROM @database_scoped_configurations

الحالة


أقرت Microsoft أن هذه المشكلة تحدث في منتجات Microsoft المسردة في المقطع "تنطبق على".

الحل


تم إصلاح هذه المشكلة في التحديث التراكمي التالية ل SQL Server:
حول التحديثات التراكمية ل SQL Server:
يحتوي كل تحديث تراكمي جديد ل SQL Server علي كافة الإصلاحات العاجلة وكافة تصحيحات الأمان التي تم تضمينها مع التحديث التراكمي السابق. تحقق من أحدث التحديثات التراكمية ل SQL Server:

الحل البديل


للتغلب علي هذه المشكلة ، يمكنك أضافه جمله TOP علي الجزء SELECT من ادراج الخاص بك للحصول علي النتيجة الصحيحة. وفيما يلي مثال علي ذلك:
DECLARE @database_scoped_configurations TABLE(x INT);  
INSERT INTO @database_scoped_configurations 
SELECT TOP 100 configuration_id 
FROM sys.database_scoped_configurations

المراجع


التعرف علي المصطلحات التي تستخدمها Microsoft لوصف تحديثات البرامج.