объединение двух .bat файлов Dos и T-SQL - PullRequest
0 голосов
/ 06 декабря 2010

Я хотел бы объединить два файла в один bat-файл, но в настоящее время sqlcmd останавливается с приглашением sqlqcmd, а SQL не работает.

Наш сервер пошел на ура, так что мне нужно на случай непредвиденных обстоятельств PDQ

Обычно я использую агент SQL-сервера для некоторых заданий, но во время сортировки нового сервера. У меня есть только SQL Express Нет агента сервера SQL.

Отлично, поэтому я создал резервную копию. Но она отлично работает в cmd, вызывая backup.sql, и отправляем sql на другой диск.

Я использовал следующее утверждение: -

Sqlcmd –S \ mypc \ instancename –i C: \ backup.sql (поскольку у меня локальное окно, аутентификация в порядке)

Это так, что я могу использовать планировщик задач в не очень дружественных Windows 7

На данный момент у меня есть файл .bat, вызывающий файл .sql.

backup.bat

Sqlcmd –S \mypc\instancename –i C:\backup.sql 

backup.sql

BACKUP DATABASE [Northwind] TO  DISK = N'\\nas1\backup\northwind.bak' WITH NOFORMAT, INIT,  NAME = N'Northwind-Full Database Backup', SKIP, NOREWIND, NOUNLOAD,  STATS = 10
GO
declare @backupSetId as int
select @backupSetId = position from msdb..backupset where database_name=N'Northwind' and backup_set_id=(select max(backup_set_id) from msdb..backupset where database_name=N'Northwind' )
if @backupSetId is null begin raiserror(N'Verify failed. Backup information for database ''Northwind'' not found.', 16, 1) end
RESTORE VERIFYONLY FROM  DISK = N'\\nas1\backup\Northwind.bak' WITH  FILE = @backupSetId,  NOUNLOAD,  NOREWIND
GO

Я хочу объединить два файла в один bat-файл, но в настоящее время sqlcmd останавливается с приглашением sqlcmd, а SQL не работает.

Sqlcmd –S \mypc\instancename  
BACKUP DATABASE [Northwind] TO  DISK = N'\\nas1\backup\northwind.bak' WITH NOFORMAT, INIT,  NAME = N'Northwind-Full Database Backup', SKIP, NOREWIND, NOUNLOAD,  STATS = 10
GO
declare @backupSetId as int
select @backupSetId = position from msdb..backupset where database_name=N'Northwind' and backup_set_id=(select max(backup_set_id) from msdb..backupset where database_name=N'Northwind' )
if @backupSetId is null begin raiserror(N'Verify failed. Backup information for database ''Northwind'' not found.', 16, 1) end
RESTORE VERIFYONLY FROM  DISK = N'\\nas1\backup\Northwind.bak' WITH  FILE = @backupSetId,  NOUNLOAD,  NOREWIND
GO

Ответы [ 2 ]

2 голосов
/ 06 декабря 2010

Добавить

quit

как последняя строка файлов .SQL.

0 голосов
/ 07 декабря 2010

Я нашел с помощью двух файлов работает

...