gpt4 book ai didi

sql-server - 我可以在 Visual Studio 数据库项目存储过程中使用 SQLCMD 命令吗?

转载 作者:行者123 更新时间:2023-12-02 18:50:36 25 4
gpt4 key购买 nike

我有很多在多个存储过程中相同的 SQL。

例如,大多数过程都声明了相同的变量,并且位于同一个 try catch block 中来处理错误。

我想使用 :r 命令,以便我可以将此代码写入一个文件中,然后将其导入到每个 sp 中。我可以在构建前和构建后脚本中使用该命令,但无法让它在正常的“构建”类型数据库对象中工作。

示例:

enter image description here

\Shared\CommonVariables 中的 SQL:

enter image description here

[p_An_Example]内:

enter image description here

错误只是说“SQL46010:\附近的语法不正确。”

-

如果我将路径用引号引起来,则“BEGIN”上的错误将被替换为 1:

enter image description here

“SQL46010:BEGIN 附近的语法不正确。”

-

我能做些什么来让它正常工作吗?目前,[p_An_Example] 具有 Build Build Action 属性,并且 \Shared\CommonVariables 设置为 None .

(我使用的是 Visual Studio 2017,数据库项目指向 2008 数据库,安装了 SQLCMD 等)

编辑:不是重复,因为我确实打开了 SQLCMD 模式...但事实证明 SQLCMD 命令在存储过程语句中不可用

最佳答案

是的,该选项位于 SQL -> 执行设置 -> SQLCMD 模式:

enter image description here

但是请注意,您不能在 SP 中包含 sqlcmd 代码,因为 DBMS 无法解释该代码,它纯粹用于在编码环境中使用;例如在 SSMS/VS 内。

关于sql-server - 我可以在 Visual Studio 数据库项目存储过程中使用 SQLCMD 命令吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51839951/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com