標準SQL+データベース入門

書影

「標準SQL+データベース」サポートページ
正誤表、補足情報、サンプルデータなど

標準SQL+データベース入門 サポートページ

学習用環境(Windows + SQL Server)

  1. SQL Serverのダウンロード
  2. SQL Serverのインストール
  3. 自動起動の設定
    1. コマンドラインツール(sqlcmd.exe)
  4. サンプルデータの取り込み
    1. データベースの作成
    2. テキストエディタからコピー&ペーストする際の注意事項
    3. 【参考】実行画面
    4. 【参考】sqlcmdの-iオプションでファイルから読み込む場合
  5. SQL Server Management Studio (SSMS: 管理ツール)

SQL Serverのダウンロード

Microsoft SQL Serverは https://www.microsoft.com/ja-jp/sql-server/sql-server-downloads からダウンロードできます。 ここでは小規模環境であれば商用でも無償で使える「Express」を使用しています。

SQL Server 2022 Expressをダウンロード

[SQL Server 2022 の各エディションとサポートされている機能 - SQL Server Microsoft Learn](https://learn.microsoft.com/ja-jp/sql/sql-server/editions-and-components-of-sql-server-2022?view=sql-server-ver16)

SQL Serverのインストール

基本をクリック

基本をクリック

「同意する」で進む

「インストール」をクリック

ダウンロードとインストールが進行するのでしばらく待つ

インストールが完了した

「今すぐ接続」でコマンドラインツールが起動します。 起動時用のコマンドや必要なオプションが表示されているのでメモしておいてください。画面上で文字列を選択して右クリック→テキストエディタ(メモ帳)などに貼り付け(Ctrl+V)することで保存できます。

コマンドラインツール(sqlcmd)から接続

自動起動の設定

インストールが完了すると自動でSQL Serverが起動します。 起動できているかどうかは「タスクマネージャー」(タスクバーで右クリック→タスクマネージャで起動)の「サービス」で確認できます。

デフォルトではSQL ServerはWindows開始時に自動開始されるように設定されています。 学習時のみ手動で開始したい場合は、タスクマネージャから「サービス管理ツール」を開き、SQL Serverのプロパティで「スタートアップの種類」を手動に変更します。

手動開始の際はタスクマネージャの「サービス」でSQL Serverを右クリック→「開始」で開始します。

「サービス」の「SQL Server」が「実行中」であるかどうか確認
タスクバーで右クリック→タスクマネージャ→サービスで「SQL Server」が「実行中」であるか確認、右クリック→「サービス管理ツールを開く」で設定

右クリック→プロパティ

スタートアップの種類で自動と手動を切り替える

コマンドラインツール(sqlcmd.exe)

接続用のコマンドは、上記の「今すぐ接続」で確認してください。

【参考】以下はSQL Server(Express Edition)用のコマンドラインです。 コマンドプロンプトまたはPowershellの画面を開いて以下実行することで起動します。

sqlcmd -S コンピューター名\SQLEXPRESS -E

-Sは接続先のサーバーを指定するオプション、-EはWindows認証を使用して接続するオプションです。サーバーの管理者として接続できます。

実行するとプロンプトが数字>に変わり、SQLコマンドが実行できるようになります(exitまたはquitで終了)。

sqlcmdの起動オプション

オプション 意味
-E セキュリティ接続(Windows認証で接続)
-U ユーザー名  
-P パスワードを使って接続する
-S サーバー  
-H ホスト名  
-d データベース  
-q “クエリ” クエリを実行(実行後はプロンプトが表示される)
-Q “クエリ” クエリを実行して終了
-s 列の区切り文字
-W 余分なスペースを削除
-y 幅 可変長型の表示幅
-Y 幅 固定長型の表示幅
-u ユニコード出力
-i ファイル名 入力ファイル
-o ファイル名 出力ファイル
-? ヘルプの表示

※sqlcmdの場合、文字列をVARCHAR(255)で定義すると格納した文字数にかかわらず常に255文字の幅で表示されます。これは-Wオプションで回避可能です。本書のSQL Server用のサンプルは-Wオプションなしでもそれなりに見やすい状態とするため、氏名などを格納する列はVARCHAR(30)で定義しています。

sqlcmd用のコマンド

コマンドラインツールではsqlcmd固有のコマンドとSELECT文などのSQL文を実行できます。 コマンドはEnterで実行、SQL文の場合はいったんキャッシュに格納され、GOコマンドで実行されます。すべてのSQL文には末尾の;が必要です。使用例は「サンプルデータの取り込み」の後で示します。

GOコマンドを含め、sqlcmd固有のコマンドには大小文字の区別はありません。

コマンド 意味
GO キャッシュに入っているSQLコマンドを実行する
:list キャッシュの内容を表示する |
:r ファイル名 ファイルを読み込んでキャッシュに追加する
:o ファイル名 実行結果を指定したファイルに保存する |
:help ヘルプを表示する

サンプルデータの取り込み

サンプルデータをあらかじめダウンロードし、テキストエディタ(メモ帳など)で表示できるようにしておいてください。

ダウンロードリンク(SQL Server用):testdb.sql, sampledb.sql, sampledb2.sql(👉サンプルデータについて

  1. データベースの作成
  2. use データベース名 でデータベースを選択
  3. テキストエディタからサンプルデータをコピー&ペースト
  4. goで実行

で取り込むことができます(👉ファイルから読み込む場合)。

SQL Serverのコマンドライン環境では、GOコマンド(小文字でも可)を実行することでコマンドが実行されます。本ページでは、他のコマンドと区別するために小文字で記載しています。

データベースの作成

以下のコマンドはまとめて選択し、sqlcmdの画面にペーストすることで実行できます。

データベースの削除(初回は実行不要、作り直したい場合に使用してください)

DROP DATABASE IF EXISTS testdb;
DROP DATABASE IF EXISTS sampledb;
DROP DATABASE IF EXISTS sampledb2;
go

データベースの作成

CREATE DATABASE testdb COLLATE Latin1_General_100_CI_AI_SC_UTF8;
CREATE DATABASE sampledb COLLATE Latin1_General_100_CI_AI_SC_UTF8;
CREATE DATABASE sampledb2 COLLATE Latin1_General_100_CI_AI_SC_UTF8;
go

テキストエディタからコピー&ペーストする際の注意事項

インストーラーから「今すぐ接続」で開いた画面の場合、一度にペーストできる行数に制限があります。testdb用のサンプルデータ(testdb-sqlserver.sql)の場合はまとめて実行できますが、sampledbおよびsampledb2用のサンプルデータは実行できません。

コマンドプロンプトからsqlcmdを起動してから実行してください(👉sqlcmdの起動)。

【参考】実行画面

コピー&ペースト用

sqlcmd -S コンピューター名\SQLEXPRESS -E
CREATE DATABASE testdb COLLATE Latin1_General_100_CI_AI_SC_UTF8;
クライアントツールを起動してデータベースを作成し、useで使用する

サンプルデータの内容をコピー

クライアントツールの画面にペースト(警告が表示されるので「強制的に貼り付け」をクリック)

goで実行(サンプルデータが取り込まれる)

【参考】sqlcmdの-iオプションでファイルから読み込む場合

本書用のサンプルデータはUTF-8で作成されているため、 sqlcmdの-iオプションでファイルを取り込みたい場合は-f 65001オプション(コードページを指定するオプション 👉Microsoft Learn)を指定する必要があります。

実行結果の表示は文字化けしますが内容には影響ありません。

sqlcmd -S コンピューター名\SQLEXPRESS -E -d データベース名 -i ファイル名 -f 65001
【参考】実行画面

SQL Server Management Studio (SSMS: 管理ツール)

SQL Server Management Studio (SSMS)はGUIベースでSQL Serverに接続し、管理やデータの閲覧、SQLの実行ができるツールです。

本書では使用しませんが、SQL Serverを活用する上で便利でしょう。

ここでは、インストールとサンプルデータ登録後のデータ表示とSQL文の実行画面のみ紹介します。

インストール完了の画面で「SMSSのインストール」をクリックするとダウンロードサイト(下記URL)に接続し、インストーラーを入手できます。

SQL Server Management Studio (SSMS) のダウンロード

スクロールしてSSMSをダウンロード

Installをクリックしてインストールを開始

しばらく待つ

Closeで終了

スタートメニューの「S」-「Microsoft SQL Server Tools 20」にある「SQL Server Management Studio 20」で起動します。頻繁に使う場合は「スタートにピン留め」をしておくと良いでしょう。

SQL Server Management Studio 20で起動

Trust server certificateに✔を入れてConnect

データベースを選択→テーブルを右クリックして「Design」でテーブル定義の表示

テーブルを右クリック→「Select Top 1000 Rows」で先頭1000行の表示

データベースを右クリック→「New Query」でクエリ画面が開く(F5で実行)


標準SQL+データベース入門 ——RDBとDB設計、基本の力 サポートページ