こんにちは、フリーランスエンジニア兼ライターのワキザカ サンシロウです。
皆さんは、SQL Server Manegement Studioを使ったことがありますか?
SQL Serverを使っている方のほとんどが、管理ツールSQL Server Manegement Studioを使っています。
そこで今回は、
- SQL Serverとは?
- SQL Server Manegement Studioとは?
- SQL Server Manegement Studioのインストール方法
- SQL Server Manegement StudioでSQLを実行する方法
- SQL Server Manegement StudioでSQLを自動生成する方法
といった基礎的なことから、応用的な方法まで、徹底的に解説します!
SQL Serverとは
SQL Serverとは、Windowsシステムによく使われているMicrosoft製のデータベースです。
データベース人気ランキング「DB-Engines Ranking – popularity ranking of database management systems」では、2018年9月時点でOracle、MySQLに次いで第3位の人気を誇っています。
専用のデータベース管理ツール「Management Studio」が使いやすいのも、魅力の一つですね。
基幹システム・経理管理システムなど業務系のシステム開発でよく使われている、人気の高いデータベースです。
データベースの種類・特徴などについては以下で詳しく解説しているので、データベースの違いを確認したい方は以下がおすすめです!
SQL Server Management Studio(SSMS)とは
次に、SQL Server Management Studio(SSMS)について解説します。
SQL Server Management Studio(SSMS)は、SQL Server用のデータベース管理ツールです。
データベースの作成・更新・削除だけでなく、バックアップやレプリケーションなどSQL Serverの能力を最大限発揮できる専用ツールですね。
SQL Serverを使っている人のほとんどが、SQL Server Management Studio(SSMS)を使っています。
使いやすい専用ツールがあるのはありがたいですよね。
ここから具体的なSQL Server Management Studio(SSMS)のインストール方法・使い方について解説していきますが、SQL Serverがインストールされていることを前提に解説をしていきます。
SQL Serverのインストールがまだの方は、以下で最新版のSQL Server 2017のインストール方法について解説しているので、以下参考にインストールしてみて下さいね!
SQL Server Management Studio(SSMS)のインストール方法
次に、SQL Server Management Studio(SSMS)のインストール方法について解説します。
まず、以下にアクセスしてインストーラのダウンロードページを開きます。
URL:https://docs.microsoft.com/ja-jp/sql/ssms/download-sql-server-management-studio-ssms
画面にある「SSMS 17.9をダウンロードしてインストールしてください。」をクリックします。
※翻訳表示されていない場合は「右クリック」→「翻訳」を選択すると日本語に翻訳されます
下にスクロールすると「日本語」のリンクがあるので、クリックしてSSMSをダウンロードします。
次に、ダウンロードしたインストーラを起動し、インストールボタンをクリックします。
これでインストールの完了です。
データベース操作言語SQLとは
次に、SQLについて簡単に解説します。
SQLとは、ータベースを操作するための言語です。
データの検索、追加、更新、削除の操作をSQLで書いて実行することで、データベースを操作することができます。
SQL Server Manegement StudioでSQLを直接書いて実行することができるので、どの書き方で何ができるか?を合わせて覚えておくのがおすすめです。
データベースを操作するSQLの例:
- データ追加:INSERT文
- データ検索:SELECT文
- データ更新:UPDATE文
- データ削除:DELETE文
ただ、これだけでは具体的な使い方がよくわからないと思うので、それぞれ詳しく解説しますね!
SSMSでSQLを実行する方法とは
では次に、SQLの具体的な書き方・実行方法について解説します。
SSMSの起動・ログイン方法
まずは、SQL Server Manegement Studioを開いてログインする方法について解説します。
「最近追加されたもの」から「SQL Server Manegement Studio」をクリックして起動します。
起動すると、次のようなログイン画面が出てくるので、接続ボタンをクリックしましょう。
これでSSMSの起動・ログインが完了です。
SQL Serverでデータを作るための基礎知識
次に、SQL Serverでデータを作るための基礎知識について簡単に解説します。
SQL Serverは以下のような構造になっているため「データベースの作成」→「テーブルの作成」が最初に必要です。
※極論言うとデータベースの作成・テーブルの作成もSQLで書くことができるのですが、ここではわかりづらくなるのであえて説明せずにすすめています。
データベースの作成方法
次に、データベースを新しく作る方法について解説します。
データベースで右クリックし、「新しいデータベース」を選択します。
選択すると、次のようなデータベース作成画面が表示されるので、データベース名を入力してOKボタンをクリックします。
OKをクリックすると、次のようにデータベースが追加されます。
今回は、「SamuraiTest」の名前でデータベースを作成しました。
この中に、テーブルを追加していく流れになります。
テーブル作成方法
次に、テーブル作成方法について解説します。
作成したデータベースの下の階層にあるテーブルを右クリックし、「テーブル」を選択します。
テーブル作成画面が表示されるので、以下のようにテーブルの設定をします。
※intが数値、nvarcharが文字列です
設定ができたら、「Ctrl + S」キーでテーブル保存ウィンドウを開き、テーブル名を以下のように設定してOKボタンをクリックします。
テーブルを選択しリフレッシュボタンをクリックすると、作成したテーブルが表示されます。
「PROFILE_TBL」の名前でテーブルが作成できました。
これで準備完了です。
SQLを実行するウィンドウの開き方
次に、SQL文を実行するウィンドウの開き方・使い方について解説します。
作成したテーブル名を選択した状態で、「新しいクエリ」を選択します。
クリックすると次のようなウィンドウが開きます。
この中にSQL文を書いてから、ウィンドウの上にある「実行ボタン」をクリックすることで、SQL文を実行できます。
データ挿入方法:INSERT文
次に、テーブルにデータを挿入するための、INSERT文の使い方について解説します。
INSERT文の書き方は次のとおりです。
INSERT文の書き方:
INSERT INTO テーブル名( 列1, 列2, ・・・ , 列n) VALUES (列1の値, 列2の値, ・・・ , 列nの値)
先ほど作ったテーブル(PROFILE_TBL)にデータを追加する場合は、次のようになります。
INSERT文サンプルコード:
INSERT INTO PROFILE_TBL( No, Name, Lang ) VALUES (1,'侍エンジニア1','VBA')
SQL入力後、実行ボタンクリックで実行します。
実行すると、クエリウィンドウの下にあるメッセージウィンドウに、以下のように表示されます。
これで1件データが追加できました。
データ確認方法:SELECT文
次に、テーブルにデータを確認するための、SELECT文の使い方について解説します。
SELECT文の書き方は次のとおりです。
SELECT文の書き方:
SELECT 列1, 列2, ・・・ , 列n FROM テーブル名
たとえば、先ほど追加したデータを確認する場合は、以下のように書きます。
SELECT文のサンプルコード:
SELECT No , Name , Lang FROM PROFILE_TBL
実行後のメッセージウィンドウ:
このように簡単にデータを確認することができます。
ちなみに、SELECT文は単純にすべてのデータのみ表示するのではなく、WHERE句を使ってデータを絞り込んで表示することもできます。
WHERE句を使ったSELECT文の書き方:
SELECT 列1, 列2, ・・・ , 列n FROM テーブル名 WHERE 絞り込み条件
確認のため、INSERT文でデータを2行追加後に、Noが1のデータのみ表示するサンプルを用意しました。
サンプルコード:
-- 1行データ追加 INSERT INTO PROFILE_TBL( No, Name, Lang ) VALUES (2,'侍エンジニア2','python') -- 1行データ追加 INSERT INTO PROFILE_TBL( No, Name, Lang ) VALUES (3,'侍エンジニア3','ruby') -- Noを1に絞ってデータ確認 SELECT No , Name , Lang FROM PROFILE_TBL WHERE No = 1
実行結果:
WHERE句を外すと、次のようにすべてのデータが出てきます。
サンプルコード:
SELECT No , Name , Lang FROM PROFILE_TBL
実行結果:
このように、特定のデータを絞ってデータを表示できるのがSELECT文の特徴です。
データ更新方法:UPDATE文
次に、テーブルのデータを更新するための、UPDATE文の使い方について解説します。
UPDATE文の書き方は次のとおりです。
UPDATE文の書き方:
UPDATE テーブル名 SET 変更内容 WHERE データを特定する条件
たとえば、先ほど追加したNoが1のName列のデータを更新する場合は、以下のように書きます。
Update文のサンプルコード:
UPDATE PROFILE_TBL SET Name = 'WEBマーケッター' WHERE No = 1 SELECT No , Name , Lang FROM PROFILE_TBL ORDER BY No ASC --Noで昇順に並び替え
実行結果:
確認のためSELECT文を最後に書いて結果を確認していますが、No1のNameが「WEBマーケッター」に書き変わっていますよね。
このように、データを書き換えることができます。
なお、WHERE句を入れ忘れると全てのデータを書き換えてしまうため、注意が必要です。
先頭に「BEGIN TRAN」最後に「ROLLBACK TRAN」を入れて次のように実行すると、データを書き換えずに結果だけ確認することができるため覚えておくと便利です。
サンプルコード:
BEGIN TRAN UPDATE PROFILE_TBL SET Name = 'WEBマーケッター' WHERE No = 1 SELECT No , Name , Lang FROM PROFILE_TBL ORDER BY No ASC --Noで昇順に並び替え ROLLBACK TRAN
データ削除方法:DELETE文
次に、テーブルのデータを削除するための、DELETE文の使い方について解説します。
DELETE文の書き方は次のとおりです。
DELETE文の書き方:
DELETE FROM テーブル名 WHERE 削除するデータの条件
たとえば、Noが1のデータを削除する場合は、以下のように書きます。
DELETE文のサンプルコード:
DELETE FROM PROFILE_TBL WHERE No = 1 SELECT * FROM PROFILE_TBL ORDER BY No ASC --Noで昇順に並び替え
実行結果:
このように、簡単にデータを消すことができます。
なお、WHERE句を入れ忘れると全てのデータを削除してしまうため、UPDATE文と同様に最初に「BEGIN TRAN」最後に「ROLLBACK TRAN」を入れて実行結果が正しくなるか確認してから実行するのがおすすめです!
サンプルコード:
BEGIN TRAN DELETE FROM PROFILE_TBL WHERE No = 1 SELECT * FROM PROFILE_TBL ORDER BY No ASC --Noで昇順に並び替え ROLLBACK TRAN
SSMSでクエリ自動作成する方法
ここまでSQLを使ったデータ挿入・確認・更新・削除方法を解説しましたが、初めてSQLを見た人はすぐに使い方を覚えるのは難しいですよね。
そんな方向けに便利な機能がSQL Server Manegement Studioには備わっています。
INSERT文・SELECT文・UPDATE文・DELETE文の型を自動で作成することができるので、それぞれ覚えておくと便利です!
SQLの型自動作成する場所:
SELECT文作成手順:
SELECT文作成時のSQL例:
USE [SamuraiTest] GO SELECT [No] ,[Name] ,[Lang] FROM [dbo].[PROFILE_TBL] GO
USEやGOなど少しコードが増えてはいますが、実行すれば次のようにデータが表示されます。
このように、簡単にコードを自動生成することができます。
最初はSQLの書き方を覚えるのが大変なので、ツールである程度の書き方が自動で作れるのはとても便利ですね。
まとめ
今回は、SQL Server Manegement Studioの概要・使い方について解説しました。
SQL Server Manegement StudioはMicrosoft純正の管理ツールなので、高機能かつ使いやすいツールです。
無料でインストールできるので、ぜひ使ってみてくださいね!