我使用SQL Server Database Project
创建了Visual Studio 2013
。构建和Publish
工作正常(项目的所有更改都在数据库上执行)但是当我选择“生成脚本”时(而不是Publish
)生成.sql
文件,但无法在SQL Server Management Studio
中直接运行(不修改),因为以下某些行不属于SQL
语言(以":"开头的那些语言):
GO
:setvar DatabaseName "Test_Project"
:setvar DefaultFilePrefix "Test_Project"
:setvar DefaultDataPath "<default path>"
:setvar DefaultLogPath "<default log path>"
GO
:on error exit
GO
/*
Detect SQLCMD mode and disable script execution if SQLCMD mode is not supported.
To re-enable the script after enabling SQLCMD mode, execute the following:
SET NOEXEC OFF;
*/
:setvar __IsSqlCmdEnabled "True"
GO
IF N'$(__IsSqlCmdEnabled)' NOT LIKE N'True'
BEGIN
PRINT N'SQLCMD mode must be enabled to successfully execute this script.';
SET NOEXEC ON;
END
GO
USE [$(DatabaseName)];
如何生成&#34;清洁&#34;按SQL
按钮时出现Generate Script
文件?如果不可能,我如何将结果转换为SQL
文件,该文件可由SQL Server Management Studio
解释?
答案 0 :(得分:0)
可以将sqlcmd脚本传递给带参数的sqlcmd.exe。在this Microsoft blog post中有一个例子。
据我所知,没有办法输出提供的参数替换的sql文件。