Case
В настоящее время я работаю над сценарием заполнения базы данных, выполняемым с sqlcmd
.Например, этот пример сценария:
IF (SELECT COUNT(*) FROM Genders)=0
BEGIN
PRINT N'Seeding table Genders...'
SET IDENTITY_INSERT Genders ON
GO
INSERT INTO Genders (GenderId, Description) VALUES (0, 'Onbekend');
INSERT INTO Genders (GenderId, Description) VALUES (1, 'Vrouw');
INSERT INTO Genders (GenderId, Description) VALUES (2, 'Man');
INSERT INTO Genders (GenderId, Description) VALUES (3, 'Onzijdig');
INSERT INTO Genders (GenderId, Description) VALUES (4, 'Vrouwman');
INSERT INTO Genders (GenderId, Description) VALUES (5, 'Manvrouw');
SET IDENTITY_INSERT Genders OFF
END
GO
Проблема
Однако, если я выполню его в режиме sqlcmd
в SQL Server Management Studio, он выдаст мне эти ошибки:
Сообщение 102, уровень 15, состояние 1, строка 5 Неправильный синтаксис рядом с «ON».
Сообщение 102, уровень 15, состояние 1, строка 10 Неправильный синтаксис рядом с «END»'.
Погуглил некоторых, но не могу понять, что я делаю не так.Без IF / BEGIN / END, если работает, но я хотел бы сначала выполнить проверку.
Вопросы:
- Что-то я делаю не так?
- Если это невозможно, есть ли обходной путь?
Заранее спасибо !!