kikki's tech note

技術ブログです。UnityやSpine、MS製品など技術色々について解説しています。

データベース・ユーザーをSQL Serverにスクリプトで作る

本章では、データベース・ユーザーをSQL Serverスクリプトで作成する流れについて共有します。

はじめに

SQL Serverでは、データベースに対する操作をGUIである「SQL Server Management Studio」で操作ができます。ただGUIでの操作は、工数がかかるため、繰り返し実行する場合に適しません。そのためスクリプトを一つ用意しておくだけで、工数の削減ができます。

データベースの作成スクリプト

まずデータベースを準備します。検索で合致する条件は、アルファベットの大文字小文字を区別せず、アクセント記号がある文字は区別するです。

USE master;
GO

IF EXISTS
        (
        SELECT
            NAME
        FROM
            sys.databases
        WHERE
            NAME = N'【データベース名】'
        )
BEGIN
	DROP DATABASE 【データベース名】
END

CREATE DATABASE 【データベース名】 collate Japanese_CI_AS

GO

ユーザーの作成スクリプト

次にユーザーを作成します。

IF EXISTS
        (
        SELECT
            NAME
        FROM
            sys.server_principals
        WHERE
            NAME = N'【ユーザー名】'
        )
BEGIN
	DROP LOGIN 【ユーザー名】
END

CREATE LOGIN 【ユーザー名】 WITH PASSWORD = '【パスワード】';
GO

データベースにユーザーを紐付け

そして最後に、ユーザーをデータベースに関連付けます。ここでは、データベースの読み書き取りの権限を付与します。

USE 【データベース名】;
CREATE USER 【ユーザー名】 FOR LOGIN 【ユーザー名】;
GO

EXEC sp_addrolemember 'db_datareader', '【ユーザー名】'
GO
EXEC sp_addrolemember 'db_datawriter', '【ユーザー名】'
GO

総括

開発環境では、テスト用データやパフォーマン検証のために、データベースを繰り返し作成する場合があるかと思います。その際に、環境からデータまで一貫してスクリプトで作成できると、楽になります。

以上、「データベース・ユーザーをSQL Serverスクリプトで作成する」でした。

※無断転載禁止 Copyright (C) 2015 kikkisnrdec All Rights Reserved.