将SQLCMD文件添加到Visual Studio解决方案引发报错问题咨询
解决Visual Studio数据库项目中SQLCMD脚本的SQL70001报错问题
当你的SQLCMD脚本在Visual Studio数据库项目中触发SQL70001: This statement is not recognized in this context.错误时,除了.sql扩展名,还可以使用以下几种扩展名来让工具正确识别脚本,消除无效报错:
.sqlcmd:这是专门适配SQLCMD脚本的扩展名,Visual Studio数据库工具会默认将其识别为SQLCMD命令文件,能正确解析其中的SQLCMD语法(比如:r、:setvar这类指令)。.postdeploy.sql/.predeploy.sql:如果你的脚本属于部署前或部署后执行的脚本,使用这两个扩展名会被数据库项目的部署流程自动识别,同时支持SQLCMD语法解析,不会触发该报错。.dacpac.sql:这个扩展名原本和DAC包相关,但部分场景下也能让VS数据库项目工具正确处理SQLCMD语法,不过优先级不如前两种高。
如果不想修改扩展名,也可以右键脚本文件→属性,将“生成操作”设置为“无”,或者在文件的属性中勾选“启用SQLCMD模式”(这是单文件级别的设置,扩展名方案更适合批量处理)。
内容的提问来源于stack exchange,提问作者ARLibertarian
相关产品推荐
相关产品推荐

