4
ข้อผิดพลาดใน database_scoped_configurations
ฉันพยายามแทรกชุดผลลัพธ์จาก: SELECT * FROM sys.database_scoped_configurations ลงในตารางชั่วคราวเนื่องจากฉันต้องการตรวจสอบการตั้งค่าสำหรับฐานข้อมูลทั้งหมดบนเซิร์ฟเวอร์ของฉัน ดังนั้นฉันจึงเขียนรหัสนี้: DROP TABLE IF EXISTS #h CREATE TABLE #h(dbname sysname, configuration_id INT, name sysname, value SQL_VARIANT, value_for_secondary SQL_VARIANT) EXEC sys.sp_MSforeachdb 'USE ?; insert into #h(dbname, configuration_id, name, value,value_for_secondary) SELECT ''?'' as dbname, * FROM sys.database_scoped_configurations D' SELECT * FROM #h H แต่จะมีเพียงหนึ่งแถวต่อฐานข้อมูลไม่ใช่สี่แถวที่ฉันคาดหวังจากการเรียกใช้การเลือกแบบธรรมดาในแต่ละฐานข้อมูล ฉันรู้ว่ามีวิธีการเขียนโค้ดที่ดีกว่าการใช้ sp_MSForEachDB …