DECLARE @backupPath NVARCHAR(256)
DECLARE @dbName NVARCHAR(128)
DECLARE @sql NVARCHAR(MAX)
-- 设置备份文件的存储路径
SET @backupPath = 'G:\dbbackup\'
-- 获取所有用户数据库的名称
DECLARE db_cursor CURSOR FOR
SELECT name FROM sys.databases WHERE database_id > 4
OPEN db_cursor
FETCH NEXT FROM db_cursor INTO @dbName
WHILE @@FETCH_STATUS = 0
BEGIN
SET @sql = 'BACKUP DATABASE [' + @dbName + '] TO DISK = ''' + @backupPath + @dbName + '.bak' + ''''
-- 执行备份操作
EXEC sp_executesql @sql
FETCH NEXT FROM db_cursor INTO @dbName
END
CLOSE db_cursor
DEALLOCATE db_cursor