SQL Server 2012 自習書シリーズ No.1
ささっと試せる SQL Server 超入門
Published: 2008 年 4 月 30 日 SQL Server 2012 更新版: 2012 年 8 月 17 日 有限会社エスキューエル・クオリティ
この文章に含まれる情報は、公表の日付の時点での Microsoft Corporation の考え方を表しています。市場の変化に応える必要 があるため、Microsoft は記載されている内容を約束しているわけではありません。この文書の内容は印刷後も正しいとは保障で きません。この文章は情報の提供のみを目的としています。
Microsoft、SQL Server、Visual Studio、Windows、Windows XP、Windows Server、Windows Vista は Microsoft Corporation の米国およびその他の国における登録商標です。
目次
S STTEEPP11.. SSQQLLSSeerrvveerr22001122 のの概概要要 ... 4 1.1 SQL Server 2012 の概要 ... 5 1.2 自習書を試す環境について ... 14 S STTEEPP22.. SSQQLLSSeerrvveerr22001122 ののイインンスストトーールル ... 15 2.1 SQL Server 2012 のインストール ... 16 2.2 インストール後のフォルダーとメニュー ... 35 2.3 サービスの確認 ... 36 2.4 Management Studio の利用 ... 40 2.5 システム データベースの確認 ... 42 S STTEEPP33.. SSQQLLSSeerrvveerr のの基基本本操操作作 をを試試ししててみみよようう! ... 44! 3.1 データベースの作成 ... 45 3.2 テーブルの作成 ... 48 3.3 SQL によるデータの追加や検索 ... 52 3.4 データの追加(INSERT ステートメント) ... 55 3.5 データの確認(SELECT ステートメント) ... 58 3.6 INSERT ステートメントで複数の行を追加 ... 59 3.7 SELECT ステートメントによるデータの検索 ... 60 3.8 上位 N 件(Top N)の取得 ... 62 3.9 インテリセンス(IntelliSense)による入力補完 ... 64 3.10 文法エラーの表示機能 ... 65 3.11 データベースのフル バックアップ ... 66 3.12 データの更新(UPDATE ステートメント) ... 68 3.13 データの削除(DELETE ステートメント) ... 70 3.14 ステートメント(スクリプト)の保存 ... 71 3.15 データベースのリストア(復元) ... 72 S STTEEPP44.. そそのの他他のの便便利利なな機機能能 ... 75 4.1 sqlcmd コマンドからの SQL 実行... 76 4.2 CREATE TABLE ステートメントの生成機能 ... 79 4.3 Excel 2010 からの利用 ... 81 4.4 Access 2010 からの利用 ... 84 4.5 ネットワーク接続の有効化 ... 90 4.6 ファイアウォールでのポート開放(TCP 1433) ... 92 4.7 修正プログラムのインストール ... 98S
S
T
T
E
E
P
P
1
1
.
.
S
S
Q
Q
L
L
S
S
e
e
r
r
v
v
e
e
r
r
2
2
0
0
1
1
2
2
の
の
概
概
要
要
この STEP では、SQL Server 2012 の概要と自習書を試す環境について説明しま す。 この STEP では、次のことを学習します。 SQL Server 2012 の概要 自習書を試す環境について1.1 SQL Server 2012 の概要
出荷本数ベースのシェア No.1(50.1%)
、顧客満足度 No.1
SQL Server 2012 は、2012 年 4 月に発売された Microsoft SQL Server の最新バージョンで
す。SQL Server は、国内の RDB(リレーショナル データベース)製品において出荷本数ベース のシェアで第1位(50.1%)を獲得し(2011 年テクノシステムリサーチ社調べ)、日経コンピュ ータの 2011 年 8 月号「第 16 回 顧客満足度調査」では、RDB ソフト(オープン系)部門で満 足度 No.1 の評価も獲得しています。 こうした SQL Server の人気・満足度を支える理由には、「使いやすさ」や「性能・信頼性の高さ」、 「開発生産性の高さ」、「データ分析機能の豊富さ」などがあります。特に「使いやすさ」に関して は、古くからの SQL Server ユーザーが口を揃えて言うほどの SQL Server の一番の大きな特徴 です。筆者自身も、今までに Oracle や DB2、PostgreSQL、MySQL などいろいろなデータベー ス製品を利用してきましたが、SQL Server の使いやすさは群を抜いています。
豊富な GUI ツール、自動チューニング
次の画面は、SQL Server の Management Studio という運用管理/開発ツールを利用して、デ ータベースを操作しているときの様子です。
SQL Server は、こうしたデータベース操作が簡単なことはもちろん、「豊富な GUI ツール」や 「自動チューニング」機能のおかげで、日々の運用管理がしやすく(バックアップや復元、定期メ ンテナンス処理などが容易)、また、パフォーマンスを監視するためのツールも充実しています。 次の画面は、SQL Server のパフォーマンス監視ツールを利用しているときの様子です。
「パフォーマンス データ コレクション」というツールを利用して性能を監視しているところ 過去のリソース使用 状況をグラフで簡単 に確認できる SQL Server の内部的な ”待機” に 関する情報(ロック待ちや CPU 待 ち、ラッチ待ち、I/O 待ちなど) をグラフで簡単に確認できる SQL Server の 使用状況(接続数や 要求数、トランザクション数など)を グラフで簡単に確認できる 「プロファイラー」というツールを利用して、実行された SQL の解析を行っているところ
いるなど、単なるデータベースの枠を超えた機能が充実しているのも大きな特徴です。次の画面は、 データ転送ツールである Integration Services のインポート/エクスポート ウィザードを利用 して、CSV 形式(カンマ区切り)のテキスト ファイルをインポートしているときの様子です(ウ ィザードだけでデータ転送が可能)。 Integration Services では、次のように「パッケージ デザイナー」というツールを利用して、高 度なデータ転送処理(ワークフロー制御やデータ変換処理など)を行うことも可能です。
銀行勘定系などミッション クリティカルな環境での導入実績も豊富
6 バージョン前の SQL Server 6.5 までは、小・中規模のデータベース環境や、部門レベルでの 導入が多かった SQL Server ですが、SQL Server 7.0 でアーキテクチャを一新(ソース コー ドの 90% 以上を書き換え)して以来、大幅なパフォーマンスの向上と信頼性の向上を実現しま した。これに伴って、大規模データベース環境やエンタープライズ(全社)レベル、ミッション ク リティカルな環境など、高い信頼性が求められる、企業の基幹システムでの採用がどんどん増えて FTP でファイルを取得し たり、複数のファイルをま とめて処理する Foreach Loop、メールを送信した りすることもできる さまざまなタスク を実行可能いきました。 たとえば、セブン銀行(旧アイワイバンク)では、銀行勘定系のシステムとして SQL Server 2000 を採用し、10,000 台を超える ATM からの入出金に、24 時間 365 日対応可能なシステムを構築 しました。 セブン銀行の導入事例(銀行勘定系システム) http://www.microsoft.com/japan/showcase/sevenbank.mspx また、百五銀行では、従来メインフレームで動作していた銀行の勘定系システムを SQL Server 2005 へ刷新し、ピーク時では 1 日に約 400 万件のトランザクションを処理するシステムを構築 しています。 百五銀行の導入事例(銀行勘定系システム) http://www.microsoft.com/japan/showcase/hyakugo.mspx また、ロンドン証券取引所では、SQL Server 2000 を採用した証券システムを構築しています。 ロンドン証券取引所の導入事例(証券システム) http://www.microsoft.com/hk/windowsserver/compare/CaseStudyDetails.mspx?recid =37
SQL Server は高パフォーマンス!
SQL Server は、SQL Server 2005 でデータベース エンジンを大幅強化してから、飛躍的にパ フォーマンスが向上し、高い性能が求められるシステムでの導入が非常に増えました。SBI リクイ ディティ・マーケット(SBI ホールディングスのグループ企業として SBI 証券や住信 SBI ネット銀行などの金融法人に、インターネット FX 取引の環境を提供するマーケット プロバイダー)では、 SQL Server 2005 を採用して、1 秒あたり最大 35,000 ものトランザクションを処理し(総口 座数 18 万件超)、米 NASDAQ では、同じく SQL Server 2005 を採用して、1 秒あたり約 5,000 件のトランザクションを処理、世界第 2 位のコンテナ船企業の米 MSC(Mediterranean Shipping Company)では、1 日 5 億件ものトランザクションを SQL Server 2005 で処理しています(デ ータベース サイズは 5 テラ バイトにもなります)。 SBI リクイディティ・マーケットの導入事例 http://www.microsoft.com/ja-jp/casestudies/sbilm.aspx NASDAQ(ナスダック)の導入事例 http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?CaseStudyID=49271
Mediterranean Shipping Company(MSC)の導入事例
活用している講談社、ソフトバンク電波改善宣言における電波状況検索システムを構築しているソ フトバンクモバイル、東日本旅客鉄道(JR 東日本)など、大規模かつ高いパフォーマンスが求め られる環境で SQL Server 2005 や 2008、2008 R2、2012 が採用されています。 名古屋銀行の導入事例 http://www.microsoft.com/ja-jp/casestudies/bankofnagoya6.aspx NEC(日本電気)の導入事例 http://www.microsoft.com/ja-jp/casestudies/nec5.aspx ソフトバンクモバイルの導入事例 http://www.microsoft.com/ja-jp/casestudies/softbankmobile2.aspx SQL Server 2012 の早期導入事例 http://www.microsoft.com/ja-jp/sqlserver/2012/case-studies/list.aspx このように、SQL Server は、銀行や証券などの非常に高い信頼性が求められるシステムから、テ ラ バイト級の大規模システムにまで幅広く採用されていることからも、信頼性とパフォーマンス が優れていることを確認できるのではないでしょうか。筆者自身も TB(テラ バイト)級の大規 模システムのコンサルティング(物理設計、論理設計、BI/DWH システム設計など)や、1 秒あ たり 1,000 バッチ リクエストの高負荷システムのパフォーマンス チューニングを行った経験 があり、パフォーマンス良く、安定稼働しているシステムを目の当たりにしてきています。弊社が 構築した SQL Server 2005 のクラスタリングとデータベース ミラーリングを採用した流通系シ ステムでは、年間ダウンタイム ゼロ(1 年間無障害・無停止)も実現しています。 SQL Server 2012 からは、さらに信頼性や可用性、パフォーマンスを向上させることができる機 能が搭載されているので、今後ますます大規模環境での導入が増えていくのではないでしょうか。
SQL Server は BI(データ分析)機能の進化がスゴイ!
SQL Server は、SQL Server 7.0 でデータ転送・変換機能である DTS(現在の Integration Services)、データ分析サーバー機能である OLAP Services(現在の Analysis Services)を提供 して以来、SQL Server 2000 から提供されたデータ マイニング機能、アドオンとして提供され たレポート サーバー機能である Reporting Services、SQL Server 2008 R2 から提供されたイ
ンメモリのデータ分析機能の PowerPivot など、BI(ビジネス インテリジェンス)および DWH (データ ウェアハウス)まわりの機能がバージョンが上がることに飛躍的に進化しています。 弊社のお客様でも、業務システムは Oracle やメインフレーム、そこからデータを抽出してデータ 分析レポートを作成する BI/DWH システムには SQL Server を採用している、というところが 多数あります。もちろん、業務システムに SQL Server、BI システムも SQL Server というお客 様もいらっしゃいますし、弊社のコンサルティング サービス(BI/DWH システム構築支援サー ビス)へのお問い合わせもここ数年非常に増えています。 こうした BI システムとしての SQL Server の人気を支える理由の 1 つには、「Reporting Services による強力なレポート機能」があります。レポート作成ツールである「レポート ビル
ダー」を利用すれば、次のようなレポートを簡単に作成することができます。 レポート ビルダーで作成したレポート例 レポート ビルダー ツールを利用して レポートを作成しているときの様子 Bing マップと 連携したグラフ 地図レポート 多彩なグラフ 表形式のレポート(データバーやインジケーター、スパークラインも配置) ドーナッツ グラフ バブル チャート レーダー チャート 積み上げ横棒 平滑折れ線 補助円グラフ 漏斗(じょうご) Reporting Services による多彩なグラフ
表形式のレポートから、Excel でお馴染みのデータバーやインジケーター、スパークライン、各種 グラフ(円、棒、円錐、バブル、散布図、レーダーチャート、ゲージなど)、地図レポートなどを 作成することができます。売上分析レポートや予実管理、ABC 分析、スコアカード、商圏分析、 電力利用状況の見える化など、さまざまなデータ分析レポートを容易に作成できるのが特徴です。
Power View による動的レポート作成
SQL Server 2012 からは、Power View と呼ばれる、新しいデータ分析/レポーティング ツー ルが提供されました。Power View を利用すると、レポートビルダーや後述の PowerPivot for Excel ツールよりも、容易に見栄えの良いデータ分析レポートを作成することが可能です。次の画 面は、Power View を利用してデータ分析レポートを作成しているときの様子です。 Power View の特徴は、次のとおりです。 直感的な操作でレポートを作成できる レポート内に画像を簡単に配置できる グラフ同士を連動させることができる(グラフ自身がスライサーとなって、グラフ同士が選択 された値によって動的に変化する) ゲージで目標達成率、傾向を表示 画像を表示可能 推移を確認可能な動的な バブル チャート グラフが動的に変化。 グラフ自身がスライサー (フィルター)となる Power View で データ分析レポートを作成して いるときの様子
再生可能なバブル チャートを作成できる(時間によって変化する値をアニメーションで確認 可能。軌跡を表示できる)
PowerPivot による高度なデータ分析
BI システムとしての SQL Server の人気を支えるもう 1 つの理由には、SQL Server 2008 R2 か ら提供された「PowerPivot」機能があります。PowerPivot には、クライアント側ツールの 「PowerPivot for Excel」と SharePoint Server と連携できる「PowerPivot for SharePoint」 の 2 種類があります。
PowerPivot(パワー ピボット)という名のとおり、従来の Excel のピボット テーブル機能を大 きく進化させたようなツールで、これを利用すると、次のような高度なデータ分析レポートを簡単 に作成することができます。
また、PowerPivot for SharePoint を利用して、SharePoint Server 上へレポートを配置すれ ば、次のように共有することも可能です。
ビッグデータ対応のインメモリ BI
PowerPivot は、すべてのデータをメモリ内へ配置して動作する「インメモリ BI」機能です。 「xVelocity エンジン」と呼ばれるエンジンを採用して、カラムベースでデータを格納し、高度 な圧縮技術を利用しています。SQL Server 2012 からは、PowerPivot のサーバー版として、 Analysis Services の「テーブル モード」(Tabular Mode:表形式モード)が搭載され、ビッグ
データへの対応(より大量のデータのサポート)、パーティショニング対応、行レベルのセキュリ
ティ機能などが提供されました。
このように SQL Server の BI まわりの機能は、バージョンが上がるごとに大きく進化して、現 場で "使える" 機能がどんどん増えています。今後ますます SQL Server の BI システムでの活 用が増えていくのではないでしょうか。
1.2 自習書を試す環境について
必要な環境
この自習書で実習を行うために必要な環境は、次のとおりです。 OS Windows Server 2008 SP2 以降 または Windows Server 2008 R2 SP1 以降 または Windows Server 2012 またはWindows Vista SP2 以降 または Windows 7 SP1 以降 または Windows 8
ソフトウェア
SQL Server 2012
この自習書内での画面やテキストは、OS に Windows Server 2008 R2(x64)SP1、ソフト ウェアに SQL Server 2012 Enterprise エディション(x64)を利用して記述しています。
S
S
T
T
E
E
P
P
2
2
.
.
S
S
Q
Q
L
L
S
S
e
e
r
r
v
v
e
e
r
r
2
2
0
0
1
1
2
2
の
の
イ
イ
ン
ン
ス
ス
ト
ト
ー
ー
ル
ル
この STEP では、SQL Server 2012 のインストールとインストール後の構成につ いて説明します。 この STEP では、次のことを学習します。 インストール インストール後のフォルダーとメニュー サービスの確認 Management Studio の起動 システム データベースの確認2.1 SQL Server 2012 のインストール
インストール要件の確認
SQL Server 2012 をインストールするためのソフトウェア要件は、次のとおりです。
この自習書内での画面やテキストは、OS に Windows Server 2008 R2(x64)、ソフトウェアに SQL Server 2012 Enterprise エディション(x64)を利用して記述しています。
Note: Visual Studio 2010 と共存させる場合の注意点
Visual Studio 2010 をインストール済みのマシンへ SQL Server 2012 をインストールする場合には、SQL Server 2012 をインストールする前に、Visual Studio 2010 の Service Pack 1(SP1)を適用しておく必要があります。もし、 Visual Studio 2010 SP1 を適用していない場合には、SQL Server 2012 インストール時に、次のように[インストー
ル ルール]画面で「失敗」となり、インストールを続行することができなくなります。
また、SQL Server 2012 のインストール中には、Visual Studio 2010 のインストール メディアも要求されるので、両 方のメディアを同時に認識できるようにしておく必要があります(片方のみだとインストールに失敗します)。したがっ 要件 OS Windows Server 2008 SP2 以降 または Windows Server 2008 R2 SP1 以降 または Windows Server 2012 または
Windows Vista SP2 以降 または Windows 7 SP1 以降または Windows 8
ソフトウェア ・Internet Explorer 7 以降・.NET Framework 3.5.1(Windows 7とWindows Server 2008 R2の場合。Windows 8 または Windows Server 2012 の場合は SQL Server のセットアップ時に自動的に有効化される)
Visual Studio 2010 SP1 を インストールしていない場合 はインストールが失敗する
Studio 2010 のインストール後に、Visual Studio 2010 の SP1 を適用しておく必要があります。適用していない場合 は、後述の SQL Server の管理ツールである Management Studio を起動することができません。
Let's Try
それでは、実際に SQL Server 2012 をインストールしてみましょう。ここでは、Windows
Server 2008 R2(x64)上に、SQL Server 2012 Enterprise エディションをインストール
する手順を説明します。
1. まずは、Windows の管理者グループ(Administrators グループ)のユーザー(Administrator
など)として Windows Server 2008 R2 へログオンします。
.NET Framework 3.5.1 の有効化
Windows 7 や Windows Server 2008 R2 へ SQL Server 2012 をインストールする場合に
は、事前に .NET Framework 3.5.1 の有効化が必要になります。Windows 8 または Windows Server 2012 へインストールする場合にはこの作業は不要です(SQL Server 2012 のインスト ール中に自動的に有効化されるため)。 1. .NET Framework 3.5.1 を有効化するには、[スタート]メニューの[管理ツール]から[サ ーバー マネージャー]をクリックして、サーバー マネージャーを起動します。 2. サーバー マネージャーが起動したら、[機能]の[機能の追加]をクリックします。 1
[機能の追加ウィザード]が起動したら、「.NET Framework 3.5.1」をチェックして、[次 へ]ボタンをクリックします。 3. [インストール オプションの確認]画面では、[インストール]ボタンをクリックします。 1 2 1 2
4. インストールが完了(.NET Framework 3.5.1 の有効化が完了)すると、次のように「イン ストールが正常に完了しました」と表示されます。 以上で、.NET Framework 3.5.1 の有効化が完了です。
SQL Server 2012 のインストール
次に、SQL Server 2012 のインストールを行います。 1. まずは、SQL Server 2012 のインストール メディアをドライブへセットします。 これにより、[自動再生]ダイアログが表示されるので、[SETUP.EXE の実行]をクリック します。 なお、自動再生ダイアログが表示されない場合は、ルート フォルダーにある setup.exe を ダブル クリックします。 2. 数秒経過すると、次のように[SQL Server インストール センター]画面が表示されます。 1 13. この画面では、次のように[インストール]ページをクリックして、「SQL Server の新規ス タンドアロン インストールを実行するか、既存のインストールに機能を追加します」をクリ
ックします。
1
ここでは、[詳細の表示]ボタンをクリックすると、詳細を確認できます。チェックが完了し、 条件を満たしていることが確認されると、[操作が完了しました]と表示されて、「失敗」が「0」 の場合は、[OK]ボタンがクリックできるようになります。確認後、[OK]ボタンをクリック します。 5. 次の[プロダクト キー]画面では、プロダクト キーを入力して、[次へ]ボタンをクリック します。 6. 次の[ライセンス条項]画面では、ライセンス条項の内容を確認した上で、[ライセンス条項 に同意します]をチェックし、[次へ]ボタンをクリックします。 [詳細の表示]ボタンをクリックすると、 詳細を確認できる 2 1 3 1 2
7. 次の[セットアップ ファイルのインストール]画面では、SQL Server 2012 のセットアッ プを行うために必要な「セットアップ ファイル」がインストールされます。 インストールが完了すると、自動的に次の画面へ進みます。 8. 次に、[セットアップ サポート ルール]画面がもう一度表示されて、インストール条件を満 1 2
条件を満たしていることを確認して、[次へ]ボタンをクリックします。 Note: Windows ファイアウォールで警告が表示される場合 OS の Windows ファイアウォールの設定を[有効]へ設定している場合(既定値は有効)は、次のように 「Windows ファイアウォール」のチェックで「警告」が表示されます。 この警告は、SQL Server をローカル利用する場合(SQL Server をインストールしたマシンでのみ利用する場合) には無視して大丈夫ですが、リモートから利用させたい場合(ネットワークを介して別のマシンから SQL Server へアクセスさせたい場合)には、ファイアウォール機能が有効だと SQL Server へアクセスできないという主旨の 警告です。 SQL Server の使用するポート番号は、データベース エンジンなら TCP 1433(既定値)になるので、このポー ト番号を[受信の規則](例外)として追加しておかないと、ネットワークを介して SQL Server へアクセスする ことができません(この設定方法については Step4 で説明します)。 1 2 Windows ファイアウォールが有効に なっていると、各機能に対して必要な ポートが開かれていることを確認する ように警告がでる 3
9. 次の[セットアップ ロール]画面では、「SQL Server 機能のインストール」を選択して、 [次へ]ボタンをクリックします。 10. 次の[機能の選択]画面では、SQL Server 2012 のインストールする機能を選択します。 ここでは、「データベース エンジン サービス」と「SQL Server オンライン ブック」、「管 1 2 PowerPivot の SharePoint 統合機能を インストールする場合は、こちらをクリック すべての機能を既定値でインストール する場合は、こちらをクリック [データベース エンジン サービス] と [ドキュメント コンポーネント]、 [管理ツール - 完全]のコンポーネント をチェック 1 2
以前のバージョンでは、Books Online(通称 BOL)と呼ばれていました)。
そ の ほ か の 機 能 の 「 Analysis Services 」 や 「 Reporting Services 」、「 Integration
Services」、「SQL Server Data Tools」などは、本自習書では利用しませんが、ほかの自
習書でそれぞれの役割と利用方法を説明しています。後からインストールすることもできるの で、ここではチェックしても、しなくてもどちらでも構いません。 なお、すべての機能をインストールしたい場合には、[すべて選択]ボタンをクリックすれば、 すべてのコンポーネントをまとめてチェックすることもできます。 また、この画面では、[共有機能ディレクトリ]で、インストール先のフォルダーを変更する こともできますが、今回は既定値のまま、[次へ]ボタンをクリックします。 Note: 後から機能を追加インストールする場合 SQL Serer 2012 のインストール後に、後から機能を追加したい場合には、インストールを再実行するか、次のよ うに[コントロール パネル]の[プログラムと機能]から、「Microsoft SQL Server 2012」を選択して、[ア ンインストールと変更]ボタンをクリックし、「追加」をクリックします。 [フォルダーの参照]ダイアログが表示されたら、インストール メディアへのパスを指定すると、インストールが 開始されます。 [インストールの種類]画面では、次のように「既存の SQL Server 2012 インスタンスに機能を追加する」を チェックして、[機能の選択]画面で、追加したい機能を選択すれば、後から機能を追加することができます。 インストール メディア を選択 1 2 3 4
11. 次に、[インストール ルール]画面が表示されて、SQL Server のインストール条件を満たし ているかどうかが、さらに細かくチェックされます。条件を満たしていることを確認して、[次 へ]ボタンをクリックします。 追加したい機能 を選択 すでにインストール済みの コンポーネントはグレーア ウトして、選択できないよ うになっている
.NET Framework 3.5.1 を有効化していない場合や、Visual Studio 2010 をインストー ル済みの環境で SP1 を適用していない場合には、ここで「失敗」が表示されます。 12. 次の[インスタンスの構成]画面では、SQL Server の名前を指定します。 [既定のインスタンス]をチェックしている場合は、Windows OS の「コンピューター名」 が SQL Server の名前になり、これに対して、[名前付きインスタンス]をチェックして、イ ンスタンス名を入力した場合は、「コンピューター名\インスタンス名」が SQL Server の名 前になります。たとえば、コンピューター名が「gaia」、インスタンス名を「SQL1」と入力 した場合は、「gaia\SQL1」が SQL Server の名前になります。 2 1 3 1 2
Note: インスタンスとは? SQL Server は、1 台のコンピューターに複数インストールすることができます。これらは「インスタンス」と呼 ばれて、インスタンス名で識別されています。1 台のコンピューターには、最大で 50 個のインスタンスをインス トールすることができます。 今回は、[既定のインスタンス]がチェックされていることを確認して、[次へ]ボタンをクリ ックします。 13. 次の[必要なディスク領域]画面では、選択した SQL Server の機能が必要とするディスク 領域が表示されます。確認後、[次へ]ボタンをクリックします。 14. 次の[サーバーの構成]画面の[サービス アカウント]タブでは、SQL Server のサービス ア カウント(内部的な実行アカウント)を指定します。 サービス アカウントには、Active Directory ドメイン環境ではドメイン ユーザー、ワーク グループ環境では Windows のローカル ユーザーを指定することをお勧めします。 1 2
ここでは、Windows のローカル ユーザーとして、あらかじめ用意しておいた「sqlservice」 という名前のユーザーを、「SQL Server データベース エンジン」と「SQL Server エージ ェント」の[アカウント名]と[パスワード]を入力します。 Note: Windows ローカル ユーザー アカウントの作成 サービス アカウント用のユーザーは、Active Directory ドメイン環境の場合は、ドメインの管理者へ依頼して、 作成してもらい、ワークグループ環境の場合は、[管理ツール]メニューの[コンピューターの管理]をクリック して、[コンピューターの管理]ツールを開いて、次のように作成することができます。 [ローカル ユーザーとグループ]の[ユーザー]フォルダーを右クリックして、[新しいユーザー]をクリックす ることで、Windows のローカル ユーザー アカウントを作成することができます。作成の際は、[ユーザーは次回 ログオン時にパスワードの変更が必要]のチェックを外して、[パスワードを無期限にする]をチェックし、パス ワードを無期限にしておく必要があります。 1 1 2 4 5 3
Note: サービス アカウントとは? "サービス" は、Windows のバックグラウンドで動作するプログラムのことで、SQL Server はサービスとしてイ ンストールされます。サービスの(内部的な)実行ユーザーは、「サービス アカウント」と呼ばれているので、前 の画面で指定した「sqlservice」アカウントは、SQL Server を内部的に実行するユーザーになります。 15. 続いて、[照合順序]タブをクリックして、照合順序の設定を確認します。 データベース エンジンのデフォルトの照合順序は、以前のバージョンの SQL Server(2000 /2005/2008/2008 R2)と同様、「Japanese_CI_AS」へ設定されています。照合順序 を変更したい場合には、[カスタマイズ]ボタンをクリックします。 設定を確認したら、[次へ]ボタンをクリックして先へ進みます。 Note: Japanese_XJIS_100 照合順序について
詳しくは、本自習書シリーズの「Transact-SQL 入門」編で説明していますが、Windows Vista 以降でサポート される「JIS X 0213:2004」(JIS2004)へ SQL Server を対応させたい場合には、次のように照合順序で 「Japanese_XJIS_100」を選択します。 「照合順序」タブをクリック 1 「Japanese_CI_AS」で あることを確認 2 3
「Japanese_XJIS_100」の 100 は、SQL Server 2008 の内部バージョン番号 10.0 という意味で、SQL Server 2005(内部バージョン番号 9.0)での JIS2004 対応の照合順序「Japanese_90」をバージョン アッ プさせたものです。 16. 次の[データベース エンジンの構成]画面の[アカウントの準備]タブでは、セキュリティ モ ード(認証モード)と管理者アカウントを指定します。 今回は、デフォルトの[Windows 認証モード]がチェックされていることを確認して、[SQL Server 管理者の指定]で[現在のユーザーの追加]ボタンをクリックします。これにより、 インストール作業を行っているアカウント(この画面では Administrator アカウント)が SQL Server の管理者として追加されます。 Note: SQL Server 管理者の指定を忘れずに [SQL Server 管理者の指定]で誰もユーザーを追加していない場合は、SQL Server の管理者が誰もいない状態 となってしまいます。このままだとインストール完了後に SQL Server へ接続することができなくなってしまう ので、忘れずに設定するようにしましょう。 認証モードと管理者アカウントについては、本自習書シリーズの「ログイン認証とオブジェク ト権限」で詳しく説明しています。 17. 続いて、[データ ディレクトリ]タブをクリックします。 2 3 1
ここでは、SQL Server のデータベースやバックアップの格納先となる既定のディレクトリを 変更することができます。今回は、何も変更せずに[次へ]ボタンをクリックします。 18. 次の[エラー レポート]画面では、SQL Server のエラー レポートを、マイクロソフト社へ 自動送信するかどうかを設定します。 1 2 1 2
条件を満たしていることを確認して、[次へ]ボタンをクリックします。 20. 次の[インストールの準備完了]画面では、ここまで行った設定を確認します。 [インストール]ボタンをクリックすると、インストールが開始されます。 21. インストール中は、次のように[インストールの進行状況]画面が表示されます。 1 2 3 1
マシン環境にもよりますが、インストールには 15~40 分程度の時間がかかります。 22. インストールが完了すると、次のように[完了]画面が表示されます。 [コンピューターの再起動が必要です]ダイアログが表示されるので[OK]ボタンをクリッ クします。[完了]画面では、各機能の[状態]がすべて「成功」と表示されていれば、イン ストールが成功です。状態を確認後、[閉じる]ボタンをクリックします。 3 1 2
2.2 インストール後のフォルダーとメニュー
インストール後のフォルダー構成
SQL Server 2012 の イ ン ス ト ー ル が 完 了 す る と 、 デ フ ォ ル ト で は 「 C:\Program
Files\Microsoft SQL Server」フォルダーへ、SQL Server が動作するために必要なファイルが
格納されます。 「110」フォルダーの下へ、各種ツールなど、すべてのインスタンスに共通のファイルが格納され、 「MSSQL11.MSSQLSERVER」フォルダーの下へ、既定のインスタンスの情報が格納されます。 このうち「DATA」フォルダーには、データベースの実体となるファイルが格納されています。
インストールされるメニュー
SQL Server 2012 のインストールが完了すると、[スタート]メニューの[すべてのプログラム] の中に[Microsoft SQL Server 2012]メニューが追加されます(メニューの構成は、インスト ール時に選択した機能によって異なります)。 既定のインスタンスの情報 データベースの実体となる ファイルが格納 すべてのインスタンスに 共通のファイル2.3 サービスの確認
サービスの確認
前述したように Windows OS では、バックグラウンドで動作するプログラムのことを「サービス」 と言います。SQL Server のインストールが完了すると、SQL Server 関連のサービスが複数追加 され、これらは「SQL Server 構成マネージャー」ツールを利用して確認することができます。Let's Try
それでは、これを試してみましょう。 1. SQL Server 構成マネージャーを起動するには、[スタート]メニューの[すべてのプログラ ム]→[Microsoft SQL Server 2012]から、[構成ツール]の[SQL Server 構成マネー ジャー]をクリックします。2. SQL Server 構成マネージャーが起動すると、次のように画面が表示されます。
が自動的に起動されます。 3. SQL Server 構成マネージャーでは、サービスの起動や停止も行えます。SQL Server を停止 するには、次のように「SQL Server(MSSQLSERVER)」を右クリックして、[停止]をク リックします。 4. 停止しているサービスを起動するには、次のように SQL Server(MSSQLSERVER)を右 クリックして、[開始]をクリックします。 Note: SQL Server サービスの名前 MSSQLSERVER と表示されるのは、既定のインスタンスとしてインストールした場合で、名前付きインスタンス としてインストールしている場合は、「SQL Server(インスタンス名)」と表示されます。
各サービスの役割
SQL Server 構成マネージャーで一覧されるサービスの主な役割は、以下のとおりです。 SQL Server サービス SQL Server サービスは、SQL Server の本体となるデータベース エンジンです。SQL Server に対して発行されたコマンドを処理して、処理結果をクライアントへ返します。また、 同時実行制御や障害復旧処理なども行います。 SQL Server エージェント サービス SQL Server エージェント(Agent)サービスは、スケジューリング機能を提供します。バッ 1 1クアップを定期的に実行したい場合や、ジョブを定期的に実行したい場合に利用します。これ らを利用しない場合には、サービスを停止しても大丈夫です。ジョブについては、本自習書シ リーズの「バックアップと復元」編で詳しく説明しています。
SQL Server Browser サービス
SQL Server Browser サービスは、名前付きインスタンスとして SQL Server をインストー ルしている場合に利用されるサービスです。SQL Server Browser サービスは、名前付きイ ンスタンス(SQL Server 2012)へ接続するクライアントが、そのインスタンスの使用して いる TCP ポート番号を問い合わせるときに利用されるサービスです。したがって、既定のイ ンスタンスのみで運用している場合には、このサービスは停止しておいても大丈夫です。 Note: フルテキスト検索サービスをインストールしている場合 SQL Server 2012 のインストール時に、次のように「検索のためのフルテキスト抽出とセマンティック抽出」(フ ルテキスト検索)機能を選択している場合は、「SQL Full-text Filter Daemon Launcher」サービスが追加さ れます。
Note: Integration Services をインストールしている場合
SQL Server 2012 のインストール時に、次のように「Integration Services」機能を選択している場合は、「SQL
Server Integration Services 11.0」サービスが追加されます。このサービスについては、本自習書シリーズの
Note: SQL Server エージェント サービスの自動起動の設定 SQL Server エージェント サービスを自動起動するように設定したい場合は、次のように SQL Server エージェン ト サービスをダブル クリックしてプロパティを開き、[サービス]タブで、[開始モード]を「自動」へ変更します。 ダブル クリック 1 2 3 4
2.4 Management Studio の利用
SQL Server Management Studio とは
SQL Server Management Studio(以降、Management Studio)は、SQL Server 2012 の管理 および開発のためのツールで、最もよく利用するツールです。データベースの作成やテーブルの作 成、バックアップと復元、スケジュール設定など、SQL Server に対するほとんどすべての操作を 行うことができます。
Let's Try
それでは、Management Studio を利用してみましょう。 1. Management Studio を起動するには、[スタート]メニューの[すべてのプログラム]から、 [Microsoft SQL Server 2012]の[SQL Server Management Studio]をクリックし ます。2. Management Studio を起動すると、最初に[サーバーへの接続]ダイアログが表示されます。
スとしてインストールしている場合は、「コンピューター名\インスタンス名」と入力します)。 [認証]には、「Windows 認証」を選択して、[接続]ボタンをクリックします(認証につ いては、本自習書シリーズの「ログイン認証とオブジェクト権限」で説明しています)。 3. これにより、Management Studio が起動して、次の画面が表示されます。 画面左側には[オブジェクト エクスプローラー]が表示されます。 オブジェクト エクスプローラーのルートにある SQL Server の名前(画面は SERVER1)の 隣には、「11.0.2100」という番号を確認できます。これは、SQL Server の内部的なバージ ョン番号(正確にはビルド番号)です。Step 4.7 で紹介している修正プログラム「CU2」を インストールしている場合は 11.0.2325 と表示されます。 ビルド番号の「11.0」は、SQL Server 2012 を表し、1 つ前のバージョンの SQL Server 2008 R2 が「10.5」、2 つ前の SQL Server 2008 が「10.0」、3 つ前の SQL Server 2005 が「9.0」、 4 つ前の SQL Server 2000 は「8.0」となっています。 オブジェクト エクスプローラー ビルド番号
2.5 システム データベースの確認
システム データベースの確認
SQL Server 2012 をインストールすると、5 つの「システム データベース」が自動的に作成され て、SQL Server の内部的な情報を格納するために利用されています。システム データベースは、 次のようにオブジェクト エクスプローラーで、[データベース]フォルダーの[システム データ ベース]フォルダーを展開して確認することができます。 「master」と「model」、「msdb」、「tempdb」という 4 つのデータベースを確認できます。 あと 1 つ、ここには表示されませんが、「Resource」という名前のシステム データベースも存在 します。それぞれの主な役割は、次のとおりです。 master データベース master は、SQL Server が動作するために必要な情報が格納されている重要なデータベース です。SQL Server の環境設定や、ログイン アカウント、ユーザー定義のエラー メッセージ などが格納されます。 msdb データベース msdb は、SQL Server エージェント サービスによって利用されるデータベースです。定期 バックアップのスケジューリング情報(ジョブ)などが格納されます。 model データベース システム データベース が表示される Resource データベース
Resource データベースは、master データベースと似ていて、SQL Server 2012 が動作す るために必要なシステム情報が格納されています。SQL Server 2000 までは、Resource デ ータベースの情報は、master データベース内に格納されていましたが、SQL Server 2005 以 降からは、Resource と master の 2 つに分かれるようになりました。
Service Pack や CU などの修正プログラムをインストールすると、Resource データベース のシステム情報が更新されます。
Note: Resource データベースは表示されない?
Resource データベースは、Management Studio には表示されませんが、次のように Windows エクスプロー
ラーで SQL Server がインストールされたフォルダーの Binn フォルダーを展開すると、データベースの実体と
なるファイルを確認することができます。
1
S
S
T
T
E
E
P
P
3
3
.
.
S
S
Q
Q
L
L
S
S
e
e
r
r
v
v
e
e
r
r
の
の
基
基
本
本
操
操
作
作
を
を
試
試
し
し
て
て
み
み
よ
よ
う
う
!
!
この STEP では、データベースの作成やテーブルの作成、データの追加、バック アップと復元など、SQL Server の基本操作を試してみましょう。 この STEP では、次のことを学習します。 データベースとテーブルの作成 SQL とクエリ エディター データの追加と確認 INSERT ステートメントで複数の値を指定 SELECT ステートメントによるデータの検索 TOP N 検索(上位 N 件の取得) Management Studio のインテリセンス機能と文法チェック機能 データベースのフル バックアップ データの更新(UPDATE ステートメント) データの削除(DELETE ステートメント) データベースのリストア(復元) ステートメント(スクリプト)の保存3.1 データベースの作成
SQL Server へのデータの格納
SQL Server へデータを格納するには、まず「データベース」を作成して、その中へ「テーブル」 を作成していきます。Let's Try
それでは、実際にデータベースを作成してみましょう。 1. データベースを作成するには、Management Studio のオブジェクト エクスプローラーから、 次のように[データベース]フォルダーを右クリックして、[新しいデータベース]をクリッ クします。 2. これにより、[新しいデータベース]ダイアログが表示されるので、[データベース名]に 「sampleDB」など任意の名前を入力します。 テーブル データベース SQL Server データ テーブル データベース • SQL Server では複数のデータベースを作成可能 • データベースの中へテーブル(データ)を格納 [新しいデータベース] をクリック 1[初期サイズ]では、データベースのサイズを設定することができます。ここでは、2 つのフ ァイルの種類が表示されますが、[ファイルの種類]で「行データ」と表示されるファイルは、 その名のとおり、データを格納するための「データ ファイル」(拡張子は .mdf)、「ログ」と 表示されるファイルは、データベースに対する変更履歴を格納するための「トランザクション ログ ファイル」(拡張子 .ldf)となります(トランザクション ログ ファイルの役割につい ては、本自習書シリーズの「バックアップと復元」編で詳しく説明していますので、こちらも ぜひご覧いただければと思います)。 これらのファイルは、[パス]で指定されたフォルダーへ格納されます。デフォルトでは、次 のフォルダーに格納されます。
C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA 作成されるファイル名は、次のようにダイアログを右へスクロールして、設定することができ ます。 データベース名へ 「sampleDB」と入力 1 データベースの 初期サイズの設定 2 ファイルが格納される フォルダーのパス 3 ファイルの 種類 データベース .mdf データ ファイル テーブルのデータを格納するため のファイル トランザクション ログ ファイル データベースに対する変更履歴を 格納するためのファイル テーブル .ldf
デフォルトでは、[ファイル名]が空白に設定されていて、この場合のデータ ファイルの名前 は「データベース名.mdf」、トランザクション ログ ファイルの名前は「データベース名
_log.ldf」(sampleDB データベースなら sampleDB.mdf と sampleDB_log.ldf)へ設
定されます。 ファイル名やパス、初期サイズは、すべて変更可能ですが、ここではデフォルトの設定のまま [OK]ボタンをクリックしてダイアログを閉じます。 3. 以上でデータベースの作成が完了です。作成が完了すると、次のように[データベース]フォ ルダーへデータベースが表示されるようになります。 ファイルの名前を入力し て、変更することも可能 2 ファイルが格納されるフォ ルダーのパス(変更可能) 1 3 データベースが 作成される
3.2 テーブルの作成
テーブルの作成
次に、作成したデータベースの中へテーブル(表)を作成していきましょう。ここでは、次のよう な「社員」データを格納するテーブルを作成してみましょう。 テーブルを作成するには、「列の名前」と「データ型」、「NULL を許可するかどうか」などを設定 する必要があります。データ型
テーブルに作成する列は、それぞれ格納するデータの種類(データ型)を指定する必要があります。 データ型には、いろいろな種類がありますが、最も基本となるのは、次の 3 種類です。 このほかのデータ型については、本自習書シリーズの「Transact-SQL 入門」編で詳しく説明し ていますので、こちらもぜひご覧いただければと思います。NULL を許可するかどうか
テーブルの作成時は、列ごとに NULL(ヌルやナルと読みます)を許可するかどうかを設定する 必要があります。NULL は「不確定な値」という意味で、データを追加するときには、入力する値 がない場合など、データの追加時ではなく、後から(データの更新時に)値を入力したい場合には NULL を許可しておくようにします。NULL を許可しない場合は、データを追加するときに、必ず 値を入力しなければなりません。Let's Try
格納するデータの種類 データ型 整数(integer) int 文字列(character) char 日付 dateこれにより、右ペインへ[テーブル デザイナー]ウィンドウと[プロパティ]ウィンドウが 表示されます。 2. ここでは、前述の社員データを格納するために、次のように列名とデータ型、NULL を許可す るかどうかを設定します。 テーブル デザイナーでは、次のように入力します。 Note:char(50) とは? 「氏名」列へ設定した「char(50)」は、格納する文字データの最大バイト数を「50」へ設定したデータ型です。 50 と指定した場合は、50 バイト(全角文字だと 25 文字分)までの文字データを格納することができます。 [新しいテーブル] をクリック 1 「テーブル デザイナー」 ウィンドウが表示される 2 「プロパティ」 ウィンドウ テーブル デザイナー 列名 データ型 NULL を許容 社員番号 int 許可しない 氏名 char(50) 許可しない 給与 int 許可する 入社日 date 許可する 列名を入力して、 データ型を選択。 char(50) は 50 の 部分を入力します。 1
3. 列の定義が完了したら、次はテーブルに名前を付けて保存します。テーブルを保存するには、 次のように、ツールバーの[保存]ボタンをクリックします。 これにより、[テーブルの名前を入力してください]と促されるので、「社員」と入力して[OK] ボタンをクリックします。以上で、社員テーブルの作成が完了です。 4. 作成したテーブルを確認するには、次のようにオブジェクト エクスプローラーで、[テーブル] フォルダーを展開します。 社員テーブルを展開して、さらに[列]フォルダーを展開すると、次のように列名やデータ型 を確認することができます。 ココをクリック 1 テーブル名を入力 2 3 1
5. テーブルの作成後、テーブル デザイナーを閉じるには、次のようにタブの右端の「×」(閉じ る)ボタンをクリックします Note: テーブルの定義を変更するには? 作成したテーブルに対して、列の追加や削除など、テーブル定義を変更したい場合は、テーブルを右クリックして [デザイン]をクリックします。これにより、右ペインへテーブル デザイナーが表示されて、列定義を変更でき るようになります。 変更後は、ツールバーの[保存]ボタンをクリックすることで、変更内容を確定することができます。 テーブルの「列」フォルダーを展開すると 「列名」と「データ型」を確認可能。 「NULL 以外」は NULL を許可しない、 「NULL」は NULL を許可するという意味 1 クリックする 1 [デザイン] をクリック 1 テーブル デザイナー が表示されて 列定義が変更可能 2
3.3 SQL によるデータの追加や検索
SQL 標準規格
テーブルに対して、データを追加したり、追加したデータを検索したりするには、ANSI(米国規 格協会)や JISC(日本工業標準調査会)などの標準化団体によって規格化されている「SQL」(エ スキューエル)という業界標準のデータベースを操作するための言語を利用します。 SQL 規格には、データの検索(SELECT)や追加(INSERT)、更新(UPDATE)、削除(DELETE) などを行うためのステートメントが定義されており、現在では、ほとんどのデータベース製品がこ の規格へ準拠しています。 したがって、これらのデータ操作については、SQL Server だけでなく、Oracle や DB2 など、 ほかのデータベース製品でも同じように操作することができます。SQL については、本自習書シ リーズの「SQL 基礎の基礎」編で詳しく説明していますので、こちらもぜひご覧いただければと 思います。Let's Try
それでは、SQL を利用してデータの操作を試してみましょう。SQL Server で、SQL を記述して 実行するには、Management Studio の「クエリ エディター」機能を利用します。 1. クエリ エディターを起動するには、次のように Management Studio でツールバーの[新 しいクエリ]ボタンをクリックします。 テーブル リレーショナル データベース データベース サーバー 1 3 クライアント SQL (処理要求) 処理結果 2 処理これにより、右ペインへ「クエリ エディター」ウィンドウが表示されて、SQL を記述できる ようになります。 2. 次に、データベースへ接続するための SQL を記述して、実行してみましょう。データベース へ接続するには、USE というステートメント(Statement:文)を使用して、次のように記 述します(sampleDB データベースへ接続する場合)。 USE sampleDB USE の後に半角スペースを入れて、データベース名を記述することで、そのデータベースへ 接続できるようになります。SQL を記述後、ツールバーの[!実行]ボタンをクリックする と、ステートメントを実行することができます。実行後、クエリ エディターの下半分が結果 ウィンドウへ変わって、ここへ「コマンドは正常に終了しました」というメッセージが表示さ れれば、USE ステートメントが成功して、sampleDB データベースへの接続が成功していま [新しいクエリ] をクリック 1 「クエリ エディター」 ウィンドウが表示される 2 クエリ エディター SQL を記述 1 [!実行] をクリック 2 クエリ エディターの 下半分が結果ウィンド ウに変わる 3 これが表示 されれば成功
す。 Note: データベース接続のリスト ボックス データベースへの接続が成功すると、次のように[!実行]ボタンの左隣のリスト ボックスへ接続先のデータベ ースが表示されるようになります。 Note: データベースを右クリックして[新しいクエリ]をクリック 次のようにデータベースを右クリックして[新しいクエリ]をクリックすると、そのデータベースへの接続が行わ れた状態のクエリ エディターを起動することもできます。 Note: [!実行]ボタンの代わりに、キーボードの[F5]または[Ctrl+E]キー ツールバーの[!実行]ボタンをクリックする代わりに、キーボードの[F5]キーまたは[Ctrl+E]キーを押し ても、SQL ステートメントを実行することができます。 ココに sampleDB が表示 されればデータベースへ の接続が成功 このリスト ボックスでは、 他のデータベースを選択することも可能。 その場合は「USE データベース」 を実行したのと同じ効果がある 2 sampleDB データベー スに接続された状態で クエリ エディターが表示 される 3 データベースを 右クリック 1
3.4 データの追加(INSERT ステートメント)
データの追加
テーブルへデータを追加するには、INSERT という SQL ステートメントを利用します。構文は 次のとおりです。 INSERT INTO テーブル名 (列名1, 列名2, …) VALUES (値 1, 値 2, …) または INSERT INTO テーブル名 VALUES (値 1, 値 2, …)INSERT INTO に続けてテーブル名を記述して列名を列挙し、VALUES のカッコの中へ追加した
い値をカンマで区切って記述します。列名を省略する場合は、テーブル作成時の列を定義した順番 に値を記述する必要があります。なお、INTO は省略することも可能です。
Let's Try
それでは、実際にテーブルへデータを追加してみましょう。 1. 前の手順で作成した「社員」テーブルへデータを追加するには、クエリ エディターで次のよ うに入力します。社員テーブルの列の定義は、「社員番号、氏名、給与、入社日」の順でした ので、その順番に沿って値をカンマで区切って記述します。 INSERT INTO 社員 VALUES (1, '鈴木 一郎', 500000, '1998/04/01') INSERT ステートメントの記述が完了したら、ツールバーの[!実行]ボタンをクリックし SQL を記述 1 [!実行] をクリック 2 これが表示されれば成功 3て、ステートメントを実行します。結果ウィンドウに「1 行処理されました」というメッセ ージが表示されれば、データの追加が成功しています。 Note: 文字列と日付デー型の値は単一引用符で囲む 上記の SQL ステートメントの入力で、「氏名」と「入社日」列のデータを「'」(単一引用符)で囲んでいるのは、 SQL では「文字列(char)と日付(date)データ型の値は、単一引用符で囲まなければならない」という決まり があるためです。 Note: SQL ステートメント内の記号は半角で入力 SQL ステートメントでは、カッコやカンマ、単一引用符など、記号や英字、数値、スペースは、すべて半角で入力 する必要があります。日本語入力(IME)がオンになっている場合は、デフォルトでは、スペースやカッコが全角 になるので、半角へ変換し忘れないようにしましょう。 Note: データの追加は行単位 リレーショナル データベースの世界では、データの追加は「行単位」で行い、Excel のように「セル単位」ではあ りません。したがって、新しい行を追加するには、すべての列の値を指定する必要があります。 2. 続いて、さらに社員テーブルへデータを追加してみましょう。今度は、INSERT ステートメ ント内に列名を記述して、その順番に沿って値を記述してみます。記述後は、実行したいステ ートメントだけを選択(マウスでドラッグ&ドロップまたはキーボードの[Shift]キーを押 しながら矢印キーで選択)して、[!実行]ボタンをクリックしてください。 INSERT INTO 社員(社員番号, 氏名, 給与, 入社日) VALUES (2, '小田 良夫', 300000, '1999/04/01') 記述して選択 1 2
択してから[!実行]ボタンをクリックするようにします。 以降の手順では、特に指定しない限り、手順内で記述したステートメントのみを選択して実行するようにしてくだ さい。
NULL 値の追加
次に、NULL 値を許可した列(給与と入社日)へ、NULL 値を追加してみましょう。 1. NULL 値を追加するには、次のように NULL というキーワードを引用符で囲まずに記述しま す。 INSERT INTO 社員VALUES (3, '浅田 ゆかり', NULL, NULL)
Note: GUI 操作でのデータの追加
Microsoft Access のように GUI 操作でデータを追加したい場合は、Management Studio のオブジェクト エク スプローラーで、次のように該当テーブルを右クリックして、[上位 200 行の編集]をクリックします。 これにより、右ペインへテーブル内のデータが表示されるので、データを入力して、最後の列で Enter キーを押 すと、データが追加されます。 この画面では、データの追加だけでなく、更新や削除も行えます。ただし、メニューのとおり、200 件までのデー タしか表示することができません。また、Visual Basic や C# などのプログラミング言語を利用してデータベー ス アプリケーションを作成する際には、SQL を利用してデータを更新するのが必須になるので、GUI 操作ではな く、SQL を確実にマスターしておくことをお勧めします。SQL については、本自習書シリーズの「SQL 基礎の基 礎」編で詳しく説明していますので、こちらもぜひご覧いただければと思います。 右クリック 1 2 データを入力 (最後の列で Enter キーを 押すと確定される) 3