跳到主要內容

T-SQL Backup Script

/*---------------------------------------------------- 
description: 備份所有資料庫
author: Nestor
date: 2014/03/25
testing code: 
-----------------------------------------------------
EXEC proc_Backup_All_DataBase 
-----------------------------------------------------*/
CREATE procedure [dbo].[proc_BACKUP_All_DataBase] 
--@Database_name varchar(50)
AS
SET NOCOUNT ON;
--儲存路徑
DECLARE @path varchar(100)='C:\SystemLead\MSSQL_BACKUP\Backup_SL\'
--取得現在時間
DECLARE @nowdate  varchar(10)=rtrim(CONVERT(char, getdate(), 112))
--取得要做完整備份的日期 -1 星期日,0 星期一, 1 星期二, 2 星期三, 3 星期四, 4 星期五, 5 星期六
--預設為星期日:現為預設值
DECLARE @FullbackupDate varchar(10)=rtrim(CONVERT (varchar(8), DATEADD(wk, DATEDIFF(wk, 0, getdate()), -1),112 ))
-- 用來暫存資料庫名稱的變數
DECLARE @dbname nvarchar(256)
DECLARE icur cursor static for 
select name from sys.databases 
where name not in ( 'master', 'model', 'msdb', 'tempdb', 'MEIHO_MIS')
OPEN icur
FETCH NEXT FROM icur INTO @dbname
WHILE(@@FETCH_STATUS=0)
BEGIN
DECLARE @SQLString nvarchar(3000);
-- 壓縮資料庫
EXEC proc_Shrink_DataBase_File @dbname
DECLARE @file_name varchar(100)=@path+@dbname+@FullbackupDate+'.bak';
IF(@nowdate <> @FullbackupDate)
BEGIN
-- 差異備份資料庫
SET @SQLString='BACKUP DATABASE ['+@dbname+'] 
TO DISK = '''+@file_name+'''  
WITH DIFFERENTIAL , NOFORMAT, NOINIT,  NAME = N'+@dbname+'-Differential'', STATS = 10;';
END
ELSE
BEGIN
-- 完整備份資料庫
SET @SQLString='BACKUP DATABASE ['+@dbname+'] 
TO DISK = '''+@file_name+'''  
WITH NOFORMAT, INIT, SKIP, REWIND, NOUNLOAD, COMPRESSION,  STATS = 10;';
END
FETCH NEXT FROM icur INTO @dbname
end
CLOSE icur
DEALLOCATE icur
--刪除7天前的備份
DECLARE @deldate varchar(10)= CONVERT(char, DATEADD(day,-0,GETDATE()),111)
DECLARE @d  varchar(20)=CONVERT(char, getdate(), 111)
EXECUTE master.dbo.xp_delete_file 0,@path,N'bak',@deldate
view raw backup.sql hosted with ❤ by GitHub

留言

這個網誌中的熱門文章

如何傳送被gmail給封鎖的附件

最近在處理電子郵件上,發現有些附件類型的檔案寄到公司的郵件系統被退件了,即便是壓縮過都是如此,經過查詢後得知原來是 Gmail對於附件的檔案類型有限制 ,由於Gmail加入了直接把雲端硬碟內檔案當附件的方法,所以我就來說明該怎樣寄送會被封鎖的附件。 1.首先先撰寫好你要寄出的郵件。 2.點選使用雲端硬碟插入檔案 3. 我在同帳號內的雲端硬碟內有個資料夾叫Gmail附件,所以點選資料夾內的檔案,選擇 [插入] ,如果要分享的是一整個資料夾也可以在點選到資料夾時就直接點選 [插入] 。 A:直接分享資料夾 B:分享檔案 4.回到主頁面上,選擇傳送,就可以把該封郵件寄出去。 5.當你寄出前如果該檔案或資料夾未曾共用,會跳出訊息,讓你可以設定共用,記得要選 [共用並傳送] ,這樣收件者才能看到附件。 6.收件者在收到郵件的時候,會看不到附件符號,也就是該信件看起來是沒有附件的。 7.但是進到郵件內容時,就可以看附件,如果不是透過Gmail收的郵件,會看到分享連結,這樣就可以不需要管附件大小,及附件的檔案類型,而將附件寄給其他人了。

電子發票專用字軌號碼取號作業(發票取號)

當在國稅局申請電子發票開立資格通過後,也確認可以取號(新取號或增加取號都相同),即可上電子發票整合服務平台進行取號作業,作業方式如下:

建立行事曆的ICS URL

透過Visual Studio 可以快速地產生 行事曆的 ics 格式,該如何快速完成呢?