Différences entre les versions de « Mssql express edition 2008 dump »
De BlaxWiki
Aller à la navigationAller à la recherche| Ligne 42 : | Ligne 42 : | ||
CLOSE db_cursor | CLOSE db_cursor | ||
DEALLOCATE db_cursor | DEALLOCATE db_cursor | ||
</pre> | |||
* Résultat du fichier de sortie C:\test\output.txt | |||
<pre> | |||
</pre> | </pre> | ||
[[Catégorie:Script]] | [[Catégorie:Script]] | ||
Version du 21 juin 2013 à 12:39
Ce script permet de backuper des bases mssql sous Mssql Express edition, sans avoir besoin de lui spécifier les bases. Il va lister toutes les bases et en exclure certaine (ici on exclut 'master','model','msdb','tempdb')
- Commance à lancer : C:\agarik>"C:\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.EXE" -S (local)\VIM_SQLEXP -i C:\Test\SQLExpressBackups.sql -o C:\test\output.txt
- Fichier C:\Test\SQLExpressBackups.sql
DECLARE @name VARCHAR(50) -- database name
DECLARE @path VARCHAR(256) -- path for backup files
DECLARE @fileName VARCHAR(256) -- filename for backup
DECLARE @fileDate VARCHAR(20) -- used for file name
-- specify database backup directory
SET @path = 'C:\Backup\'
-- specify filename format
SELECT @fileDate = CONVERT(VARCHAR(20),GETDATE(),112)
DECLARE db_cursor CURSOR FOR
SELECT name
FROM master.dbo.sysdatabases
WHERE name NOT IN ('master','model','msdb','tempdb') -- exclude these databases
OPEN db_cursor
FETCH NEXT FROM db_cursor INTO @name
WHILE @@FETCH_STATUS = 0
BEGIN
SET @fileName = @path + @name + '_' + @fileDate + '.BAK'
BACKUP DATABASE @name TO DISK = @fileName
FETCH NEXT FROM db_cursor INTO @name
END
CLOSE db_cursor
DEALLOCATE db_cursor
- Résultat du fichier de sortie C:\test\output.txt