You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

打开SQL Server托管实例数据库属性时遇‘子查询返回多值’错误

解决SQL Server Managed Instance数据库属性窗口报错问题

问题描述

打开SQL Server托管实例的数据库属性窗口时,弹出错误提示:

Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression. (.Net SqlClient Data Provider)

已执行以下脚本删除备份历史,但问题未解决:

EXEC msdb.dbo.sp_delete_database_backuphistory 
          @database_name = N’<DBName>’

排查与解决步骤

  • 检查并清理数据库扩展属性:自定义扩展属性异常可能导致属性窗口查询出错。先查看所有扩展属性:
    SELECT * FROM sys.extended_properties WHERE major_id = DB_ID('<DBName>')
    
    若发现异常条目,执行删除(替换占位符后运行):
    EXEC sys.sp_dropextendedproperty @name = N'异常属性名', @level0type = N'DATABASE', @level0name = N'<DBName>'
    
  • 清理关联作业历史:msdb中该数据库的作业历史可能存在重复或异常记录,执行清理:
    EXEC msdb.dbo.sp_delete_jobhistory @database_name = N'<DBName>'
    
  • 检查数据库元数据一致性:用DBCC命令排查元数据损坏:
    DBCC CHECKDB('<DBName>') WITH NO_INFOMSGS, ALL_ERRORMSGS
    
  • 升级SSMS版本:旧版SSMS对托管实例的属性查询可能存在兼容性问题,更换最新版SSMS重试。

内容的提问来源于stack exchange,提问作者Rap

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 17:20:41