【发布时间】:2019-10-01 18:45:50
【问题描述】:
我正在尝试使用 SQL 命令变量创建具有不同架构的存储过程,但是由于错误,我无法构建项目:
SQL71501: Procedure: [$(SchemaName)].[pr_MySproc] has an unresolved reference to Schema [$(SchemaName)].
这就是我编写存储过程的方式:
CREATE PROCEDURE [$(SchemaName)].[pr_MySproc]
@Param1 tinyint = 0,
@Param2 INT = 0
...
然后是一系列发布配置文件,都包含与此类似的变量:
<SqlCmdVariable Include="SchemaName">
<Value>SCHEMA1</Value>
</SqlCmdVariable>
我正在尝试做的事情是否可能?有没有办法通过 SQL 命令变量指定架构?
【问题讨论】:
-
您可以,但您必须使用动态 SQL;你不能参数化一个模式。这对我来说听起来像是一个 XY 问题。
标签: sql sql-server visual-studio tsql sqlcommand