我刚刚回答了这个问题,但从未尝试过运行它。所以我尝试了一下.. 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
我搜索过但找不到正确答案。
这里需要修复什么?
这有效。
USE [DBName]
:setvar ScriptPath "C:\Work\"
:setvar SQLFile "Test.sql"
GO
:r $(ScriptPath)$(SQLFile)
这对于刚接触 SQLCMD 和 r: 功能的人来说非常有帮助。 我之前遇到过“解析时遇到不正确的语法:r”错误