У меня есть следующий запрос, который я выполняю, используя командный файл. В командном файле я использую следующий синтаксис:
echo populating Application table with values...
SET "installFile=%sqlDir%\Install\DataFiles\Insert_ApplicationNames.sql"
OSQL /n /i "%installFile%" /d%db% /U%user% /P%pswd% /S%serv%
echo
echo populated Application table with values in Insert_ApplicationNames.sql
echo
Показанный ниже sql запускается без каких-либо ошибок при выполнении из SQL Management Studio, но при запуске как часть пакетного сценария он продолжает давать ошибки Может ли кто-нибудь помочь мне понять, что я здесь делаю неправильно?
Кроме того, строки вставляются, но наша ночная установка QA прерывается из-за ошибки, выдаваемой пакетным скриптом.
IF NOT EXISTS(SELECT * FROM Application WHERE name = '')
BEGIN
INSERT INTO Application
(Name)
VALUES
('')
END
GO
IF NOT EXISTS(SELECT * FROM Application WHERE name = 'App1.exe')
BEGIN
INSERT INTO Application
(Name)
VALUES
('App1.exe')
END
GO
IF NOT EXISTS(SELECT * FROM Application WHERE name = 'App2.exe')
BEGIN
INSERT INTO Application
(Name)
VALUES
('App2.exe')
END