SQL 命令模式 - 无法运行命令

问题描述 投票:0回答:2

我刚刚回答了这个问题,但从未尝试过运行它。所以我尝试了一下.. SQL 命令模式 SQL SERVER - 无法打印

我认为如果 Print 有效,那么该命令肯定会运行,但令我惊讶的是它没有运行

    USE [DBName]  
        :setvar ScriptPath 'C:\Work\'
        :setvar SQLFile 'Test.sql'

         ----- commented  PRINT $(ScriptPath) + $(SQLFile)    ---- Works 
        GO
         :r $(ScriptPath) + $(SQLFile)   ---  Doesn't work 
-- throws:A fatal scripting error occurred. Incorrect syntax was encountered while parsing :r

             :r $(ScriptPath)+$(SQLFile)   ---  Doesn't work 
    -- throws:A fatal scripting error occurred. Unable to process :r command
             GO

我搜索过但找不到正确答案。

这里需要修复什么?

sql-server sql-server-2012
2个回答
1
投票

这有效。

USE [DBName]  
        :setvar ScriptPath "C:\Work\"
        :setvar SQLFile "Test.sql"

        GO
         :r $(ScriptPath)$(SQLFile)

0
投票

这对于刚接触 SQLCMD 和 r: 功能的人来说非常有帮助。 我之前遇到过“解析时遇到不正确的语法:r”错误

© www.soinside.com 2019 - 2024. All rights reserved.