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