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

SQL Server报错'Case'附近语法错误,查询case表异常问题咨询

SQL Server查询case表报语法错误的问题说明及解决方案

报错根因

  • CASE是SQL Server的官方保留关键字,用于CASE WHEN条件判断逻辑,当你直接把case作为表名写入查询语句时,SQL解析器会优先将其识别为关键字而非表名,因此抛出语法错误。
  • 你提到的「限制指定表查询」的机制确实存在(属于账号权限控制范畴),但权限类限制的报错为权限拒绝相关提示,和你收到的语法错误提示完全不同,因此本问题和查询限制无关。

临时解决方法(无需修改表结构)

有两种兼容的写法可以正常查询该表:

  1. 使用SQL Server标准的方括号包裹保留字表名(无需额外配置,通用度最高)
-- 基础查询写法
SELECT * FROM [case]

-- 带库名、模式名的完整写法
SELECT * FROM [你的数据库名称].[dbo].[case]
  1. 使用双引号包裹(需确保数据库开启QUOTED_IDENTIFIER配置,默认状态为开启)
SET QUOTED_IDENTIFIER ON
SELECT * FROM "case"

长期优化建议

如果拥有表结构修改权限,建议将表重命名为非保留关键字的名称,例如case_info、business_case等,避免后续每次查询都需要额外处理,也减少其他开发人员踩同类坑的概率。


内容的提问来源于stack exchange,提问作者Zain Ul Abideen Iftikhar

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 14:36:04