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

在DBeaver中执行SQL Server存储过程报语法错误如何解决

问题原因

你遇到的语法错误有两个核心诱因:

  • SQL Server 存储过程调用不支持存储过程名(参数)的括号传参写法,该语法仅适用于自定义函数调用,或是MySQL等其他数据库的存储过程调用规则,即便是加了EXEC/EXECUTE关键字,用括号包裹参数列表同样会触发语法错误。
  • 你定义的存储过程参数顺序为@LastName在前、@FirstName在后,无参数名直接传参时需要严格匹配该顺序,否则会出现参数映射错误,即使调用语法正确也无法查到预期结果。
正确调用方式

方式1:简写EXEC,按顺序传参(不指定参数名)

-- 两种写法都可以生效
EXEC Member_proc 'test_e', 'test'
EXECUTE Member_proc 'test_e', 'test'

注意:该写法必须严格匹配存储过程定义的参数顺序,参数顺序调整后调用代码也需要同步修改,否则容易出现逻辑错误。

方式2:指定参数名传参(推荐使用)

EXEC Member_proc @LastName = 'test_e', @FirstName = 'test'

优势是不需要考虑参数定义顺序,可读性和可维护性更高,存储过程参数顺序调整后无需修改调用代码。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 00:15:08