MSDE FunClub 現在までのアクセスカウント数 最終更新日 : 2000/10/21
Microsoft Data Engine FunClub
Since 2000.10.21
SQLServer7.0/MSDE 完全トレーニングテキスト(下巻)
【第17章310p 〜 313p掲載】

-- [SQL17_09.SQL]
--             SQLServer7.0  Transact-SQL言語
--             日本技術ソフト開発  堀川 明
--            http://www.horikawa.ne.jp/msde/
--
-- このSQLプログラムは、
--   (1)完全バックアップと差分バックアップを複数回実施します
--   (2)トランザクションログのバックアップを複数回実施します
--
-- [注意]
--   このプログラムの実行は db_owner または db_backupoperator
--   の権限が必要です
--
-- ( 件処理されました)のメッセージの表示を抑止します
    SET NOCOUNT ON
GO
    --** お掃除 **
    --[社員]テーブルは、AccessのNorthwindデータベース
    --を移行したもの
     USE MySampleTest  --接続先DB
     DELETE FROM 社員 WHERE( 社員コード BETWEEN 10 AND 20 )
GO

--*******************************
--       【スクリプト開始】
--*******************************
    DECLARE @dbname    varchar(20)
    DECLARE @bkdvname  varchar(40)
  
    -- バックアップを行うデータベースの名前
    SELECT  @dbname   = 'MySampleTest'

    -- バックアップデバイスの名前
    SELECT  @bkdvname = 'MySampleTest_BackupDev'

    --*************************************
    --       【完全1のバックアップ】
    --*************************************
    BACKUP  DATABASE  @dbname    --バックアップDBの名前
      TO    @bkdvname            --バックアップデバイス名
     WITH
           DESCRIPTION = '完全1:File = 1'
         , INIT                  --既存の内容を破棄する

    --************
    --  修正変更
    --************
    INSERT INTO 社員(社員コード,氏名) VALUES( 10 , '山田 一郎' )
    INSERT INTO 社員(社員コード,氏名) VALUES( 11 , '山田 二郎' )
    INSERT INTO 社員(社員コード,氏名) VALUES( 12 , '山田 三郎' )
    INSERT INTO 社員(社員コード,氏名) VALUES( 13 , '山田 四郎' )

    --*************************************
    --      【差分Aのバックアップ】
    --  [完全1]からの変化分を記録する
    --*************************************
    BACKUP  DATABASE  @dbname
      TO    @bkdvname
     WITH
           DESCRIPTION = '差分A:File = 2'
         , DIFFERENTIAL

    --**********************************************
    -- 【トランザクションログのバックアップ(1)】
    --            ログの切り捨てを行う
    --**********************************************
    BACKUP  LOG   @dbname
      TO    @bkdvname
     WITH
           DESCRIPTION = 'ログ1:File = 3'

    --*************************************
    --      【完全2のバックアップ】
    --*************************************
    BACKUP  DATABASE  @dbname
      TO    @bkdvname
     WITH
           DESCRIPTION = '完全2:File = 4'

    --************
    --  修正変更
    --************
    INSERT INTO 社員(社員コード,氏名) VALUES( 14 , '上田 花子' )
    INSERT INTO 社員(社員コード,氏名) VALUES( 15 , '上田 恵子' )
    INSERT INTO 社員(社員コード,氏名) VALUES( 16 , '上田 良子' )
    INSERT INTO 社員(社員コード,氏名) VALUES( 17 , '上田 優子' )

    --*************************************
    --      【差分Bのバックアップ】
    --  [完全2]からの変化分を記録する
    --*************************************
    BACKUP  DATABASE  @dbname
      TO    @bkdvname
     WITH
           DESCRIPTION = '差分B:File = 5'
         , DIFFERENTIAL


    --**********************************************
    -- 【トランザクションログのバックアップ(2)】
    --            ログの切り捨てを行う
    --**********************************************
    BACKUP  LOG   @dbname
      TO    @bkdvname
     WITH
           DESCRIPTION = 'ログ2:File = 6'


    --*************************************
    --      【完全3のバックアップ】
    --*************************************
    BACKUP  DATABASE  @dbname
      TO    @bkdvname
     WITH
           DESCRIPTION = '完全3:File = 7'

    --************
    --  修正変更
    --************
    INSERT INTO 社員(社員コード,氏名) VALUES( 18 , '田山 一郎' )
    INSERT INTO 社員(社員コード,氏名) VALUES( 19 , '田山 二郎' )
    INSERT INTO 社員(社員コード,氏名) VALUES( 20 , '田山 三郎' )

    --**********************************************
    -- 【トランザクションログのバックアップ(3)】
    --**********************************************
    BACKUP  LOG   @dbname
      TO    @bkdvname
     WITH
           DESCRIPTION = 'ログ3:File = 8'
    PRINt '終了しました'

    --MySampleTestから別の接続にする
    --SQL17_09Rプログラムがすぐに実行できる配慮
    USE master
GO
技術評論社の書籍ガイドへ
下巻:ISBN4-7741-0966-5

ウィンドウを閉じる


(株)日本技術ソフト開発 責任編集:堀川 明
MSDE FunClubに関するご意見・ご要望等ございましたら、 msdefun@horikawa.ne.jp までご連絡下さい。
HOME: http://www.horikawa.ne.jp/msde/


MSDE FunClubの運営は、マイクロソフト社とは一切の関係はありません