データベース初期化スクリプト (SQL Server)

SQL Server 上でデータベースを作成し、ログインを作成し、データベースのユーザーを作成するための一連の Transact-SQL について記述します。
テーブルやインデックスの作成などについては触れません。
SQL Server 認証と Windows 認証では若干異なるので、分割して記述します。
 
■ SQL Server 認証のユーザーを作成する場合
Database1 データベースを作成し、user1 ログインおよび user1 ユーザーを作成するには、以下のようなスクリプトを実行します。

use [master]
go
 
if exists (select name from sys.databases where name = N'Database1')
drop database [Database1]
go
 
create database [Database1]
go
 
if exists (select name from sys.server_principals where name = N'user1')
drop login [user1]
go
 
create login [user1] with password = N'P@ssw0rd', default_database = [Database1]
go
 
use [Database1]
go
 
create user [user1]
go
 
exec sp_addrolemember N'db_owner', N'user1'
go

 
注意点
(1) 同じ名前のデータベースが既に存在するかどうかを調べるには、次のように db_id を使用してもかまいません。
if db_id(N'Database1') is not null
drop database [Database1]
go
(2) exists の逆の判定をするには、次のように is null を使用します。
if (select name from sys.databases where name = N'Database1') is null
(3) 照合順序の指定を省略した場合、日本語版では Japanese_CI_AS が設定されます。
     明示的に指定するには、次のように collate を使用します。
create database [Database1] collate Japanese_CI_AS
go
(4) ユーザーを削除するには次のようにします。
     (今回の場合は、同じ名前のユーザーが既に存在していたとしてもデータベース自体を再作成しているので不要です。)
if exists (select name from sys.database_principals where name = N'user1')
drop user [user1]
go
(5) ログイン名とユーザー名が同じであれば、ユーザーを作成するときに for login を省略できます。
     明示的に指定するには次のようにします。
create user [user1] for login [user1]
go
 
■ Windows 認証のユーザーを作成する場合
Database1 データベースを作成し、XYZPC\ASPNET ログインおよび XYZPC\ASPNET ユーザーを作成するには、
以下のようなスクリプトを実行します。

use [master]
go
 
if exists (select name from sys.databases where name = N'Database1')
drop database [Database1]
go
 
create database [Database1]
go
 
if exists (select name from sys.server_principals where name = N'XYZPC\ASPNET')
drop login [XYZPC\ASPNET]
go
 
create login [XYZPC\ASPNET] from windows with default_database = [master]
go
 
use [Database1]
go
 
create user [XYZPC\ASPNET]
go
 
exec sp_addrolemember N'db_owner', N'XYZPC\ASPNET'
go

 
バージョン情報
SQL Server 2005, 2008, 2008 R2
 

Silverlight 4 関連リンク

随時追記していきます。
 
製品情報
        最新バージョンをダウンロードできます。
 
開発環境
    Silverlight 4 ランタイム など。
    Visual Studio 2010 では既定で Silverlight 3 アプリケーションの開発が可能ですが、
    Silverlight 4 アプリケーションを開発するためにはこのアドインが必要です。
    このアドオンには、以下のものが含まれています。
        ・ Silverlight 4 開発者ランタイム
        ・ Silverlight 4 SDK
        ・ WCF RIA サービス 1.0
        ・ Silverlight 4 用の F# ランタイム
Silverlight Toolkit (ほぼ必須)
 
開発リファレンス
MSDN
            クラス ライブラリの説明と連携しています。
            WCF RIA Services が正式版でなかったときのものなので注意が必要です。
    Code Recipe
            ソースコードあり (アプリケーション名は MSStoreSample)。
            Silverlight 3 アプリケーションであり、WCF RIA Services を利用していません。
            ソースコードあり (アプリケーション名は MSStoreSample)。
            Silverlight 4 アプリケーションであり、WCF RIA Services を利用しています。
    MSDN マガジン
            ソースコードあり (アプリケーション名は ExpenseReport)。
            WCF RIA Services が正式版でなかったときのものなので注意が必要です。
            ソースコードあり (アプリケーション名は KharaPos)。
Silverlight 4 Training Kit (2010 年 4 月)
    Silverlight 4 Training (オフライン版)
        ソースコードあり。ビデオあり。
    Out of Browser に対応しています。
    ダウンロードに時間がかかるので、クライアントにインストールしておくと便利です。
 
Silverlight アプリケーション
    Twitter クライアントです。
    UX デザイン パターン集です。