| MSDE FunClub |
|
最終更新日 : 2000/07/22 |
|
Microsoft Data Engine FunClub
|
Since 2000.07.22
|
|
SQLServer7.0/MSDE 完全トレーニングテキスト(上巻) |
|
【第2章159p 〜 160p掲載】 |
-- [DDL系SQL文の基礎(例題4)EX3-03.SQL]
-- SQLServer7.0 Transact-SQL言語
-- 日本技術ソフト開発 堀川 明
-- http://www.horikawa.ne.jp/msde/
--
-- このSQLプログラムは、
-- MyTestDBデータベースを新規に作成します
-- データファイルとトランザクションログファイルを別々の
-- DISK装置に配置する
--
-- [注意]
-- このSQL文を実行するログイン者に、データベースの新規作成権限
-- を与えてください。
-- ログインのサーバーロールで、Database Creators の権限が必要です
-- System Administrators の権限でもOKです
-- 権限チェックの方法は、[SQL01_01.SQL] を見てください
-- ( 件処理されました)のメッセージの表示を抑止します
SET NOCOUNT ON
GO
--//////////
-- 【注意】
--/////////
PRINT ''
PRINT '***** 注意 ******'
PRINT 'このプログラムの実行では C:\DATA と D:\TLOG ディレクトリが必要です'
PRINT 'もしこのディレクトリがない状態で、このプログラムを実行すると、'
PRINT 'CREATE DATABASE命令でエラーが起こります'
PRINT 'そのときは、 DROP DATABASE MyTestDB 命令を実行して、削除します'
PRINT 'データベースの削除命令は、DROPDB.SQL です'
PRINT '***** 注意 ******'
-- 上のPRINT文でサーバー側に溜まっている文字列を全部送信する
RAISERROR(' ',0,1) WITH NOWAIT
GO
-- データベース MyTestDB が存在しますか?
-- 存在しなければ、新しく作ります
-- データベースの存在チェックは、masterデータベースのsysdatabasesを参照します
-- sp_databasesストアドプロシージャによって、存在テストを行うこともできます
IF NOT EXISTS (SELECT name FROM master.dbo.sysdatabases
WHERE name = 'MyTestDB' )
BEGIN
-- データベースを新規に作成する
CREATE DATABASE MyTestDB
ON PRIMARY
( -- データファイル
NAME = MyTestDB_DAT , -- 論理ファイル名
FILENAME = 'C:\DATA\MyTestDB.mdf', -- 物理ファイル名
SIZE = 10MB , -- 初期サイズ
FILEGROWTH = 5% , -- 自動拡張単位
MAXSIZE = UNLIMITED -- ファイル最大サイズ(無制限)
)
LOG ON -- トランザクションログファイル
(
NAME = MyTestDB_LOG , -- 論理ファイル名
FILENAME = 'D:\TLOG\MyTestDB.ldf', -- 物理ファイル名
SIZE = 5MB , -- 初期サイズ
FILEGROWTH = 5MB , -- 自動拡張単位
MAXSIZE = 30MB -- ファイル最大サイズ
)
PRINT 'データベース MyTestDB を作成しました'
END
ELSE
BEGIN
PRINT 'データベース はすでに存在します。作成できません。'
PRINT 'DROP DATABASE MyTestDB を実行してください'
PRINT 'DROPDB.SQL を実行してください'
-- DROP DATABASE MyTestDB
END
GO