Сравнение схем базы данных: опубликованный сценарий без командного режима
Мой вопрос касается сравнения схем SQL.
Когда я генерирую скрипт, используя сравнение схем SQL, скрипт генерируется в следующем формате.
/*
Deployment script for Student
This code was generated by a tool.
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
*/
GO
SET ANSI_NULLS, ANSI_PADDING, ANSI_WARNINGS, ARITHABORT, CONCAT_NULL_YIELDS_NULL, QUOTED_IDENTIFIER ON;
SET NUMERIC_ROUNDABORT OFF;
GO
:setvar DatabaseName "Student"
:setvar DefaultFilePrefix "Student"
:setvar DefaultDataPath "F:\Data\"
:setvar DefaultLogPath "H:\Logs\"
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)];
GO
PRINT N'Altering [dbo].[usp_InsertStudentData]...';
GO
.....
Если я запускаю запрос ниже в режиме SQL Cmd, то он должен работать.
Но я не хочу запускать этот запрос в режиме SQL Cmd, так как наш DBA не одобряет это Теперь мой вопрос...
Мне нужно выполнить скрипт, который не включает код режима SQL Command ":setvar DatabaseName"
Дайте мне знать, если вам нужна дополнительная помощь в моем вопросе.