Comments
Transcript
アクセス(Access)のシステムを 無料の SQL Server 2016 Express へ
アクセス(Access)のシステムを 無料の SQL Server 2016 Express へ 移行してみよう アクセス(Access)の「ネットワークが遅い」「排他制御が弱い」 「破損」「セキュリティ」「データ量」などの心配がある方のために、 アクセス(Access)のテーブルを無料の「SQL Server Express」へ 移行して、アクセス(Access)のプログラムから「ODBC」接続で 「リンク」する方法とは!! VER 1.0 作成者/ お問い合わせ先 エスケーコンピューター・ワールド有限会社 大分県中津市下宮永2丁目505-9 TEL :0979-22-0058 作成者:高内 章治 E-Mail:[email protected] 作成日:2016/8/16 著作権 本教材(本商品)の著作権は、エスケーコンピューター・ワールド有限会社(以下、弊社)にあります。 教材の使用につき、以下の点にご注意ください。 この教材の内容は、著作権によって保護されていますので、無断転載・複製を禁じます。 ネット上や、その他の各種媒体での、無断公開、配布は出来ません。 誰かに、このレポートをあげることなども著作権違反となりますので、ご注意ください。 免責事項 この教材(e-book)は、テーマとして取り上げた事項に関し、適切かつ信頼に足る情報を提供することを意図して 作られています。 著者は、法律、その他の分野に関する専門的なアドバイスを与えることを保証するものではありません。 著者は、利益や特定の目的に対する適合性を保証するものではありません。 著者は、この本の内容の使用・適用によって生じた、いかなる結果に対する責任も、負うところではありません。 もし、法律その他の専門分野で助けが必要な場合は、その分野の専門家からサービスの提供を受けてください。 2 はじめに 小規模なシステムには、マイクロソフト社の、 「アクセス(Access) 」という「データベースソフト」が多く使用され ています。 「アクセス(Access) 」は、 「データベース」を格納する「テーブル」から、データ抽出・加工する「クエリ」 、画面 を作成する「フォーム」 、レポートを作成する「レポート」などが含まれています。 ひとつのソフトで、 「小規模なシステム」を短期間に価格も安く開発することができます。 でも、デメリットもあります。 「アクセス(Access) 」で作ったシステムは小規模なシステム用ですので、通常は1人で使用するようになっていま す。 現実的には、数人で使用することも可能です。 しかし、 「アクセス(Access) 」は、複数の人が同じデータにアクセスしたときの処理、 「排他制御」があまり強くは ありません。 最悪の場合、 「データベース」自体が壊れる可能性があります。 壊れた「データベース」は、中のデータを取り出すことができなくなります。 また、 「アクセス(Access) 」は「セキュリティ」や「データ」の信頼性に関して強くはありません。 「ユーザー」ごとにデータへのアクセスの権限を設定することが出来ません。 「アクセス(Access) 」のソフトウェアがあれば、誰でもデータの中身を見ることができます。 データ量が多くなると信頼性が心配になります。 困りますね。 その為、複数の人がアクセスしたり、データが多くなった場合や「ユーザー」ごとのアクセス管理をおこないたい場 合には、堅牢な「データベース」を使用する必要があります。 マイクロソフト社の「SQL Server」 (エスキューエルサーバー)やオラクル社の「データベース」などです。 一般的には、有償になっています。 しかし、マイクロソフト社の「SQL Server」には、 「SQL Server Express」という無償の「データベース」があり ます。 3 そして、Windows のパソコンの「ODBC」というミドルウェアを使ってで簡単に「データベース」に接続すること ができます。 今まで、作った「アクセス(Access)」のプログラムの資産、 「クエリ」 、 「フォーム」 、 「レポート」などを継続して使用 することができます。 「クライアントサーバーシステム」を簡単に、短期間で構築することができます。 書店に行くと、 「アクセス(Access)」や、 「SQL Server」の書籍がたくさんあります。 しかし、無償の「SQL Server Express」の説明やセットアップ方法を説明した書籍はありません。 また、 「ODBC」の設定や「アクセス(Access) 」から「SQL Server Express」への移行のやり方」 、 「ネットワーク の設定方法」などを説明した書籍もありません。 この教材は、 「アクセス(Access)」の「データベース(テーブル) 」から堅牢な「データベース」 、 「SQL Server」に移 行して今までの「アクセス(Access)」のプログラムの資産を使いたい方のために、 「アクセス(Access)」から「SQL Server」への移行方法をわかりやすくまとめました。 無料の「SQL Server Express」と「ODBC」 、 「アクセス(Access)のプログラム」を使用することにより、安く、簡単 に「クライアントサーバーシステム」を構築することができます。 業務改善をおこなうことが出来ます。 この教材で、 「アクセス(Access)」の「データ(テーブル) 」を、より堅牢な「SQL Server」に移行して安定した業務 システムを構築してください。 この教材は、以前、発売開始した、 「アクセス(Access)のシステムを無料の SQL Server 2012 Express へ移行して みよう」の次のバージョンです。 2016 年 6 月に、 「SQL Server 2016」が販売されました。 この教材は、 「SQL Sever」の「2016」版になります。 以前は、 「Windows8」に、 「SQL Server 2012 Express」をインストールしました。 今回は、 「Windows10」 (64 ビット)に「SQL Server 2016 Express」 (64 ビット)をインストールします。 「2016」は、64 ビットにしかインストール出来ません。 マイクロソフト社が、新しい「Windows」と「SQL Server」を発売したので改訂しました。 この教材が、あなたの業務の一助になれば幸いです。 4 ソフトウェア名の記載について この教材は、ソフトウェア名の記載は、次のように表記しています ソフトウェア名 Microsoft Office Access Microsoft SQL Server Microsoft Windows XP Microsoft Windows 7 Microsoft Windows 8 Microsoft Windows 8.1 Microsoft Windows 10 Microsoft Office Excel 表記名 「Access」 「SQL Server」 「Windows XP」 「Windows 7」 「Windows 8」 「Windows 8.1」 「Windows 10」 「Excel」 5 目次 第1章 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 第2章 2.1 2.2 2.3 2.4 2.5 第3章 3.1 3.2 3.3 3.4 3.5 3.6 3.7 第4章 4.1 4.2 第5章 5.1 5.2 5.3 5.4 5.5 第6章 6.1 6.2 第7章 7.1 7.2 7.3 7.4 7.5 第8章 8.1 SQL Server とは......................................................................................................................................................................... 7 データベースの種類 .............................................................................................................................................................. 8 Access と SQL Sever の比較................................................................................................................................................ 9 何故、SQL Server がよいのか .......................................................................................................................................... 10 SQL Server の変遷 ............................................................................................................................................................. 12 ODBC とは.......................................................................................................................................................................... 14 アクセスプロジェクト(アクセス ADP)とは ................................................................................................................ 16 サーバーを使うメリットとデメリット.............................................................................................................................. 17 Access から SQL Server へ移行するときの注意点.......................................................................................................... 19 SQL Server 2016 Express のインストール ........................................................................................................................... 21 SQL Server 2016 の種類.................................................................................................................................................... 22 SQL Server 2016 Express とは ........................................................................................................................................ 24 SQL Server 2016 Express のインストール ..................................................................................................................... 29 「Microsoft SQL Server Management Studio」の使い方 ............................................................................................ 42 SQL Server のフォルダー.................................................................................................................................................. 44 データベースの作成.................................................................................................................................................................. 45 データベースとは................................................................................................................................................................ 46 Management Studio の立ち上げ ...................................................................................................................................... 52 データベースの作成 ............................................................................................................................................................ 53 テーブルの操作方法 ............................................................................................................................................................ 57 テーブルの中のデータの操作方法 ..................................................................................................................................... 62 リレーションシップの作成................................................................................................................................................. 63 エクスポート/インポート/貼り付け ................................................................................................................................... 70 ネットワークの設定.................................................................................................................................................................. 91 ネットワークの一般的な知識............................................................................................................................................. 92 SQL Server のネットワークの設定................................................................................................................................... 97 データの移行 ........................................................................................................................................................................... 107 ODBC の作成 .................................................................................................................................................................... 108 アップサイジングの使用方法........................................................................................................................................... 114 データベースダイアグラムの追加 ................................................................................................................................... 123 SQL Server Migration Assistant for Access での移行.................................................................................................. 127 データのインポートによる移行のやり方........................................................................................................................ 137 Access から SQL Server を使う............................................................................................................................................ 151 ODBC の作成 .................................................................................................................................................................... 152 Access から SQL Server に接続する............................................................................................................................... 158 その他....................................................................................................................................................................................... 165 ユーザーとセキュリティの管理 ....................................................................................................................................... 166 Access でのセキュリティの確保...................................................................................................................................... 191 バックアップと復元 .......................................................................................................................................................... 192 スクリプトの生成と実行 .................................................................................................................................................. 198 パススルークエリでスピードアップ ............................................................................................................................... 209 メールサポート ....................................................................................................................................................................... 217 メールサポート(ご質問)............................................................................................................................................... 218 6 第1章 SQL Server とは 「SQL Server」はマイクロソフト社が、開発、販売している小規模から、中、大規模システム用の「データベース」 です。 この章では、 「データベースの種類」から、 「Access」と「SQL Server」の比較、 「ODBC」などについて説明します。 7 第1章 SQL Server とは 1.1 データベースの種類 「データベース」の種類と特徴です。 いろいろな「データベース」があります。 (1) データベースの種類 次のような「データベース」があります。 データベース名 MS Access (マイクロソフト アクセス) 使用環境 パソコンベース FileMaker (ファイルメーカー) パソコン及び ネットワーク Oracle (オラクル) ネットワーク MS SQL Server (マイクロソフト エスキューエル サーバー) ネットワーク MySQL (マイエスキューエル) パソコン及び ネットワーク PostgreSQL 「ポストグレス」 「ポストグレエスキューエル」 「ポストグレエスキューエル」 「ポスグレ」 などと読みます。 パソコン及び ネットワーク 特徴 ・マイクロソフト社が開発したパソコンベースでの小規模 システム用の「データベース」です。 ・最新のバージョンは「Access2016」です。 ・ 「Access2016」の安いものは14,000 円くらいです。 ・ファイルメーカー社が開発したパソコンベースでの「デ ータベースソフト」です。 ・Filemaker Pro 15 が 40,000 円弱です。 ・オラクル社が開発したネットワーク用/大規模システム 用の「データベース」です。 ・システム全体では、現在、一番使用されているようです。 以前は価格が高かったのですが最近はかなり安くなって いるようです。 ・Oracle Standard Edition one の 2nup(ライセンス)が 42,000 万円弱です。 ・マイクロソフト社が開発したネットワーク用/大規模シ ステム用の「データベース」です。 ・現在のバージョンは「SQL Server 2016」です。 ・Windows 環境では一番多く使用されているようです。 ・サーバー本体と 2 ライセンスで 11 万円前後くらいです。 ・オープンソースの「データベース」です。 ・Web との親和性が高い。 ・シンプルであり導入/運用しやすい。 ・非常に高速に動作します。 ・SQL 言語をサポートしています。 ・ODBC をサポートしています。 ・ライセンスが柔軟です。 ・日本語に対応しています。 ・オープンソースのため入手も利用も無料です。 ・Linux/Windows など多くのプラットフォームで動作し ます。 ・MySQL は PostgreSQL に比較して機能より速度を重視 した「データベース」です。 ・セットアップはコマンドを使用する必要があります。 ・オープンソースの「データベース」です。 ・UNIX 系で動きます。 ・C、C++、Perl、Java、Tcl/Tk、PHP、Python、Lisp がの言語が使えます。 ・日本語も使用できます。 ・ネットワークでも使用されます。 ・Unix/Windows/メインフレームなど幅広く使用されてい ます。 8 1.2 Access と SQL Sever の比較 1.2 Access と SQL Sever の比較 「データベース」について、マイクロソフト社の「アクセス(Access) 」と「MS SQL Server(マイクロソフトエスキューエルサー バー」と比較しました。 違いが理解できると思います。 (1) Access と SQL Server の比較 「Access」は、 「小規模システム用」の「データベース」です。 マイクロソフト社の「SQLServer」は、Windows のパソコンや、サーバーで使用されている商用の「データベース」としては、 一番多く使用されています。小規模から、中・大規模システム用まで使用されています。 現在の最新バーションは、 「SQL Server 2016」です。 2016 年 6 月1日に発売されました。 比較項目 開発会社 バージョン 価格 複数アクセス データベースの制限 セキュリティ管理 故障したときの修復 排他制御(同時アクセス) その他 Access マイクロソフト社 Access 2016 Access 2016 は1万 4000 円くらいです。 本来は1人で使用します。 複数で使用する場合でも4人程度が限界 です。 2 ギガバイト 出来ません。 誰でも「テーブル」や「クエリ」を見る ことができます。 パスワードはかけることができます。 出来ません。 (必ずバックアップを取っておく必要が あります。 ) 弱い MS SQL Server マイクロソフト社 2016 サーバー本体と2ライセンスで11 万 円前後くらいです。 (Standard Edition) 複数人数で使用することができま す。 (ライセンスで使用するユーザー が制限されます。 ) 件数、容量などの制限はありません。 無料版の「SQL Server Express」は 制限があります。 10 ギガバイトです。 可能です。 「データベース」別にユーザーのア クセス管理ができます。 出来ます 強い 制限はありますが無料版が準備され ています。(Express Edition) 大規模システム用の「データベース」は、複数の人がアクセスできますが、非常に高価です。 機能制限はありますが、無料版(SQL Server 2016 Express Edition)もマイクロソフト社から提供されています。 複数のユーザーが「ネットワーク」で使用することができます。 小・中規模システムや開発用に使用されています。 開発費用を安くすることができます。 9 第1章 SQL Server とは 1.3 何故、SQL Server がよいのか 何故、 「SQL Server」が他の「データベース」より良いのでしょうか。 次のような理由があります。 (1) 何故、SQL Server がよいのか 何故、 「SQL Server」がよいのでしょうか 次のような理由があります。 ①小規模から大規模システム用の「データベース」です。 小規模から、大規模システムまでの「データベース」として使用することができます。 ②信頼性が高い。 複数の「ユーザー」が同時に「データベース」にアクセスしても壊れません。 ③ユーザー管理ができる。 「ユーザー」や、 「データ」ごとに「データベース」にアクセスする権限を設定することができます。 ④データの処理が、 「データベース」側でおこなわれる。 「ビュー」 (クエリ)や「ストアドプロシージャー」 (アクションクエリ)などの処理が、 「データベース」側でおこなわれ ます。 「データベース」に、処理能力のあるサーバーを使用することにより、データの処理能力を向上させることができます。 クライアントのパソコンの処理能力はあまり必要ではありません。 ⑤「インポート」や「エクスポート」の機能がある。 「Excel」などの外部のデータから「データベース」へ「インポート」や、外部への「エクスポート」の機能があります。 ⑥「データベース」の管理ができる。 「データベース」の使用状況などの管理ができます。 ⑦データのバックアップや復元、復旧する機能を持っています。 データのバックアップや、データの復元、復旧の機能を持っています。 ⑧タスク管理ができます。 処理を定期的に実行することができます。 小規模から大規模システムまで、十分に耐える「データベース」です。 10 1.3 何故、SQL Server がよいのか 他にも、小規模から大規模システム用の「データベース」としては、 「オラクル」や「MySQL」などがあります。 次は、 、何故、 「オラクル」や、 「MySQL」を選ばすに、 「SQL Server」を選択したのかの理由です。 ①無料の「SQL Server 2016 Express」があります。 一番の理由は、 「SQL Server」には、無償版の「SQL Server 2016 Express」があります。 いくつかの制限はありますが、無料で「SQL Server」の「データベース」を使用することができます。 ②「ODBC」が使用できます。 Windows のパソコンには、標準で、 「ODBC」というミドルウェアがあります。 「SQL Server」に接続する「ODBC」のドライバーも標準でついています。 簡単に「SQL Server」に接続することができます。 ③アップサイジング 「Access」には、 「Access」の「データベース」 (テーブル)から「SQL Server」の「データベース」を自動で作成して データを移行する「アップサイジング」という機能があります。 簡単に、 「Access」の「テーブル」を「SQL Server」の中に作成・移行することができます。 「Access10」からは、 「SQL Server 2016 Express」には、 「アップサイジング」出来ます。 しかし「Access2013」からは、 「アップサイジング」の機能はなくなりました。 ④SQL Server Migration Assistant 7.0 for Access 「Access2013」からは、 「アップサイジング」の機能が無くなりました。 マイクロソフト社は、英語版ですが、 「Access」から「SQL Server」へ移行するツールをサポートしています。 「SQL Server Migration Assistant 7.0 for Access」です。 このソフトを使用して、簡単に「Access」から「SQL Server」へ移行することが出来ます。 ⑤GUI があります。 「SQL Server」には、 「SQL Server Management Studio」という「GUI」(グラフィカル ユーザー インターフェース) があります。 「テーブル」などの追加、修正、削除など、 「SQL Server」のいろいろな追加、変更を画面を見ながら簡単に操作するこ とができます。 ⑥書籍が多い 「SQL Server」に関する書籍は、書店に行けばたくさんあります。 不明点などあれば、すぐに調べることができます。 ⑦サポートがある 通常は、 「SQL Server」は、マイクロソフト社が有償で、提供しています。 また、日本の多くのソフトウェアメーカーが、マイクロソフト社と提携しています。 お金を払えば、多くのソフトウェアメーカーがサポートしてくれます。 MySQL などは、無償ですが自分の責任で使う必要があります。 セットアップした人が退職すると後のメンテナンスに支障が出る場合があります。 11 第1章 SQL Server とは 1.4 SQL Server の変遷 現在の、 「SQL Server」の最新版は、 「SQL Server 2016」です。 次のように変遷してきました。 (1) SQL Server の変遷 目的 ・Window NT 統合 世代 第一世代 ・TCO 削減 ・自動チューニング 第二世代 名称 SQL Server 6.5 (1995 年) SQL Server 7.0 (1998 年) SQL Server 2000 ・信頼性とセキュリティの強化 ・Business Intelligence 機能の統合 ・アプリケーションプラットフォーム 第三世代 SQL Server 2005 (2005 年) SQL Server 2008 SQL Server 2012 (2012 年) 12 特徴 ・Sybase SQL Server との差別化 ・レプリケーションの搭載 ・DB エンジンの再設計 ・自動チューニング ・Easy to Use ・クエリアナライザ ・インデックスチューニング ・より深い Windows 統合 ・2 ノードクラスタ ・OLAP と ETL の標準搭載 ・16 インスタンス構成 ・Awe64G メモリ ・4 ノードクラスタ ・ログ配布 ・データマイニング ・xml データ変換 ・Itanium サポート ・Notification Services ・Reporting Service ・x64 サポート ・50 インスタンス構成 ・8 ノードクラスタ ・データベースミラーリング ・オンライン操作 ・レポート機能の統合 ・OLAP エンジンの再設計 ・ETL とデータマイニングの拡張 ・.NET Framework 統合 ・ネイティブな XML 対応 ・16 ノードクラスタ ・ポリシーベース管理 ・データ操作の監査 ・サーバー統合のための機能 ・パフォーマンスデータコレクション ・変更データキャプチャ ・大規模データウェアハウスへの対応 ・レポート機能強化 ・99.999 % の連続稼働率への要求に応える SQL Server AlwaysOn ・集計処理を飛躍的に向上させるカラム スト ア インデックス ・迅速、かつ容易にデータを探索できる Power View と PowerPivot ・データ ウェアハウスのデータ品質を高める Data Quality Services 1.4 SQL Server 2014 (2014 年 4 月) SQL Server 2016 (2016 年 6 月) 13 SQL Server の変遷 ・Windows ファイルの蓄積と利用を容易にす る FileTable 機能 ・オンプレミスとクラウドの開発効率をアップ する SQL Server Data Tools ・インメモリ機能の強化により、メモリー上に データを常駐させて高速化する。 ・クラウド上の上の Windows Azure との連携 が強化されています。 ・バージョンアップした、インメモリ OLTP (Online Transaction Processing:オンライ ントランザクション処理)機能 ・セキュリティ対策( 「動的データマスキング」 「行レベルセキュリティ」 )が出来ます。 ・高度な分析(OLAP(Online Analytical Processing:オンライン分析処理)ができま す。 第1章 SQL Server とは 1.5 ODBC とは 「ODBC」の設定方法については、後ほど詳細に説明します。 ここでは、概要について説明します。 「ODBC」がどのようなものか理解できればよいと思います。 (1) ODBC とは 「ODBC」 (オーディービーシー)とは、 「Open DataBase Connectivity」の略です。 マイクロソフト社によって提唱された「データベース」にアクセスする「ミドルウェア」です。 この「ODBC」を使用することにより、 「SQL Server」だけではなく、 「オラクル」など、いろいろな「データベース」に簡単に 接続することができます。 もちろん、 「Access」からも使用することができます。 (2) ODBC のメリット 「ODBC」を使用するメリットについて説明します。 ①「SQL Server」に接続することができます。 「ODBC」は、 「SQL Server」に接続することができます。 「Access」は、 「ODBC」を経由して、 「SQL Server」のデータ(テーブル)にリンクすることができます。 ②「Access」で開発したプログラムの資産をそのまま使用することができます。 「Access」で開発したプログラム(クエリ、フォーム、レポートなど)をそのまま使用することができます。 「ODBC」で接続するメリットです。 ③「Access」の「テーブル」のみを「SQL Server」に移動します。 作業としては、 「Access」の「テーブル」のみを「SQL Server」へ移動するだけです。 他の「クエリ」 、 「フォーム」 、 「レポート」は、 「Access」を使用します。 ④「ネットワーク」で使用することができます。 それぞれの、パソコンに、 「ODBC」を設定して、 「SQL Server」に接続することにより、 「ネットワーク」で使用するこ とができます。 「クライアントサーバーシステム」を構築することができます。 (3) ODBC のデメリット もちろん、次のような「ODBC」のデメリットもあります。 ①データの処理が、プログラム側で行われるため、大きいデータ処理では、クライアントのパソコンの処理能力に依存する 場合があります。 ②また、 「Access」で作ったプログラムを使用する為には、パソコンごとに、 「ODBC」の設定が必要になります。 「デメリット」はありますが、 「メリット」の方が大きいと思います。 14 1.5 ODBC とは (4) 64bit の Windows7 の ODBC 64bit の Windows7 の「ODBC」は、注意が必要です。 64bit のパソコンの Windows8 や 8.1、Windows10 には、ODBC が2つ入っています。 32bit と 64bit です。 でも、64bit の Windows7 には、ODBC は 1 つです。 これは、64bit の ODBC です。 32bit の Windows7 の ODBC は、32bit です。 例えば、 64bit の Windows7 の Access から、SQL Server に ODBC で接続(リンク)する場合です。 「SQL Server 2012 や 2014」が 32bit だったり、Access2010 や Access2013 が 32bit のとき、Access から ODBC でリンクする 場合、32bit の ODBC を使用する必要があります。 でも、64bit の Windows7 の ODBC の「システム DSN」に設定しても、Access から ODBC でリンクしようとしても作成した、 「システム DSN」が表示されません。 「ユーザーDSN」を設定すると、表示されます。 「システム DSN」はそのパソコンを使うユーザー全体に適用されます。 「ユーザーDSN」は、そのユーザーのみに適用されます。 本来は、 「システム DSN」が便利ですね。 Access で SQL Server に ODBC でリンクをするときに、その中で、ODBC を新規に作成することもできますが「ユーザーDSN」 になります。 そのときは、32bit の ODBC を使います。 「C」ドライブの「Windows」のフォルダーの「SysWOW64」のフォルダーがあります。 その中に「odbcad32.exe」というファイルがあります。 これをダブルクリックします。デスクトップにショートカットキーを作ってもよいですね。 私のパソコンでは、 C:¥Windows¥SysWOW64¥odbcad32.exe でした。 これが、32bit の ODBC です。 これで、 「システム DSN」が設定できると思います。 注意してください。 15 第1章 SQL Server とは 1.6 アクセスプロジェクト(アクセス ADP)とは 「Access」のプログラムから、 「SQL Server」に接続する方法に「ODBC」という方法があるのがわかりました。 これ以外に、 「Access」のプログラムから「SQL Server」に接続する方法があります。 「アクセスプロジェクト」と呼んでいます。拡張子が ADP なので「アクセス ADP」とも言います。 「アクセスプロジェクト」について説明します。 しかし、Access2013 以降からは、この機能はなくなりました。 (1) アクセスプロジェクトとは 「Access」は、データを格納する「テーブル」 、データを抽出・加工する「クエリ」 、画面を作成する「フォーム」 、レポートを作 成する「レポート」などを持っています。 「Access」のソフトだけで、システム全体を構築することができます。 しかし、前述したように、 「Access」の「データベース(テーブル) 」は、セキュリティや排他性に弱いなどの理由で、中、大規模 の「データベース」としては、精度や信頼性が不足しています。 その為、 「Access」には、 「データベース」を、 「SQL Server」が使用できるように、 「アクセスプロジェクト」 (アクセス ADP)と いうものがサポートされています。 「Access」の新規作成するときに、拡張子を「ADP」で作成します。 「アクセスプロジェクト」と呼んでいます。 この「アクセスプロジェクト」は、 「テーブル」と「クエリ」を持っていません。 「SQL Server」の「テーブル」と「ビュー」 (選択クエリ) 「ストアドプロシージャー」 (アクションクエリ、パラメータクエリ) を使用します。 「フォーム」と「レポート」は、 「Access」を使用します。 (2) アクセスプロジェクトの特徴 「アクセスプロジェクト」 (アクセス ADP)は、次のような特徴があります。 ①「SQL Server」に直接、接続できます。 「アクセスプロジェクト」 (アクセス ADP)から、 「SQL Server」に直接、接続することができます。 「ODBC」の設定は、必要ではありません。 ②他の「データベース」への接続することは出来ません。 「オラクル」や、 「MySQL」などの「データベース」へ接続することは出来ません。 ③「SQL Server」側で処理が行われます。 データの抽出・加工する「ビュー」 (選択クエリ)や、データを処理する「ストアドプロシージャー」 (アクション クエリ/パラメータクエリ)などは、 「SQL Server」側で行われます。 「SQL Server のインストールされたパソコンやサーバーの処理能力が高ければ「データ処理」が早くなります。 ④「ODBC」が不要です。 「ODBC」の設定は必要ではありません。 ⑤「Access」の知識がある程度、使えます。 全く同じではありませんが、ある程度、 「Access」の知識が使えます。 ⑥「アクセスプロジェクト」 (アクセス ADP)の書籍が少ない。 「アクセスプロジェクト」 (アクセス ADP)の書籍は、殆ど販売されていません。 学習する場合や、問題が発生したときに困ります。 「アクセスプロジェクト」もよいのですが、プログラムの作成方法が、通常の「Access」とは、若干やり方が異なっています。 開発にある程度の知識が必要になります。時間もかかります。 16 1.7 サーバーを使うメリットとデメリット 1.7 サーバーを使うメリットとデメリット 「SQL Server」を使うときは、普通のパソコンでも、構いませんが、一般的に、 「サーバー」を準備します。 「サーバー」を準備するメリットについて説明します。 (1) サーバーを使うメリット 「サーバー」を使用するメリットには次のようなものがあります。 ①常時、使用状態にする必要があります。 「SQL Server」には、いろいろなデータが格納されています。 企業の多くの人が使用しますので、常時、使用状態にする必要があります。 その為には、別に1台、 「サーバー」が必要になります。 ②セキュリティの管理が必要 データには、重要なデータもありますので、簡単に使用できないように、別の「パソコン」 (サーバー)にする必要があり ます。 ③データの信頼性が高い 「サーバー」は、 「RAID」(Redundant Arrays of Inexpensive Disks、または Redundant Arrays of Independent Disks: レイド)を持っています。 「RAID」とは、 「複数台のハードディスクを組み合わせることで仮想的な1台のハードディスクとして運用する技術」で す。 複数の「ハードディスク」で、データを管理することができます。 一方の「ハードディスク」が故障しても、他の「ハードディスク」を使用することができます。 データの信頼性をあげることができます。 ④誤動作が少ない。 一般的に、 「サーバー」には、サーバー用の「OS」(オペレーティングシステム)と「SQL Server」など。最小限のソフト のみインストールされています。 いろいろなソフトのインストールによる、誤動作などが少なくなります。 (2) サーバーを使うデメリット 当然、デメリットもあります。 ①お金がかかります。 「サーバー」用の機器(パソコン)や「OS」(オペレーティングシステム)、 「無停電電源装置」などの費用がかかります。 ②「サーバー」の管理が必要です。 「サーバー」を管理する人が必要になります。 ③「サーバー」の知識が必要です。 「サーバー」を使いこなす知識が必要になります。 でも、大事なデータですから、なるべく、 「データベース」を保存するための「サーバー」を準備することをお勧めします。 17 第1章 SQL Server とは (3) サーバーを選択するポイント 「サーバー」を購入する場合に、いくつかの選択するポイントがあります。 ①タワー型を選択する。 「サーバー」には、 「ラックマウント型サーバー」と「タワー型サーバー」の2つの種類があります。 「SQL Server」は、社内で使用しますので、 「タワー型のサーバー」を選択します。 ②CPU の種類と CPU の増設 「SQL Server」の処理内容にもよりますが、想定している機能より少し上の機能の製品を購入します。 教材の、 「SQL Server 2016 Express」は、 「1CPU」しかサポートしていません。 「サーバー」が、 「2CPU」の「デュアルプロセッサ」でも、1つの CPU しか使用しません。 注意が必要です。 ③「メモリー」 、 「ハードディスク」 「メモリー」 、 「ハードディスク」も、想定している機能より少し上の機能の製品を選択します。 ④冗長機能 冗長機能は重要です。 「サーバー」の信頼性を向上させる必要があります。 「RAID」 (レイド、Redundant Arrays of Inexpensive Disk)と呼ばれています。 「RAID」とは、複数台のハードディスクを組み合わせることで仮想的な1台のハードディスクとして運用する技術です。 「RAID」のレベルは、少なくとも、 「RAID1」 (レイドワン)が必要です。 「ミラーリング」と呼ばれています。 複数の「ハードディスク」に対して、同じデータが保存されています。 1台の「ハードディスク」に障害が発生してもシステムは、稼動し続けることができます。 ⑤騒音 「サーバー」によっては、かなりの騒音が出るものがあります。 騒音で業務に支障が出る場合もありますので、検討された方がよいと思います。 ⑥メーカーのサポートがある。 メーカーのサポートがある、サーバーを購入した方がよいです。 ハードディスクに異常が発生したときは、メーカーの人が「サーバー」のある場所まで訪問して交換などをおこなってく れます。 (オンサイトサポート) ⑦「サーバー」用の OS を選択する。 「サーバー」用の OS を使用します。 「サーバー」の管理や、 「RAID」の管理をおこなうことができます。 Windows では、 「Windows Server 2008」 「Windows Server 2008 R2」 「Windows Server 2012」などがあります。 ⑧無停電電源装置を使用する 停電などが起こっても、 「サーバー」がシャットダウンしないように、 「無停電電源装置」を使用します。 「サーバー」用の OS は、電源の停電などで電気が突然切れると、壊れる可能性があります。 ⑨バックアップ装置 最近では、外付けハードディスクやネットワークに直接、接続して使用するファイルサーバー専用機(NAS)を安く購入 することができます。 「SQL Server」で定期的にデータベースのバックアップを取って保管することもできます。 定期的に、 「Access」のプログラムから、 「SQL Server」の「テーブル」データを「Excel」や「CSV」にダウンロードし て外部データに保存することもできます。 ⑩環境 これは、 「サーバー」ではありませんが、可能であれば、 「サーバー」をおく環境は温度が低く「ホコリ」の少ない場所に おいてください。 「ハードディスク」は、温度があがると、故障の割合が急激に増加します。 「ホコリ」も嫌います。 最近は、 「サーバー」の価格もかなり下がりました。 機能と価格をよくみて選択してください。 「サーバーのメーカー」としては、 「IBM」 、 「HP」 、 「NEC」 、 「富士通」 、 「日立」などがあります。 18 1.8 Access から SQL Server へ移行するときの注意点 1.8 Access から SQL Server へ移行するときの注意点 「Access」のデータベースやプログラムを「SQL Server」へ移行する場合、注意点があります。 これは、 「SQL Server 2008 R2 Express」で発生した問題ですが、 「SQL Server 2016 Express」でも発生すると思いますので注意 が必要です。 (1) ADO と DAO ファイルを直接アクセスする方法に2種類あります。 「DAO」と「ADO」です。 ①「DAO」は、 「Data Access Objects」の略です。 ②「ADO」は、 「ActiveX Data Objects」の略です。 「Access2000」以前は、 「DAO」が使用されていました。 「Access2000」以降に、 「ADO」が作成されました。 「ADO」は、 「DAO」の後継版として開発されたオブジェクトです。 やり方は、 似ていますがコードは、違っています。 最近は、 「ADO」の方が多いようです。 以前の「DAO」を使っている「Access」を SQL Server に ODBC でリンクするときには注意が必要です。 ●問題点と対策 「DAO」を使用している場合、Access から、SQL Server へアップサイジングして Access から、ODBC で SQL Server にリンク すると、 「DAO」の「テーブルタイプ」のレコードセットでは、エラーが出ます。 解決策は、 「ダイナセットタイプ」か「スナップショットタイプ」に変更するか、ADO に変更する必要があります。 「ADO」では、エラーは出ませんでした。 ●以下、レコードセット別の「ADO」と「DAO」の説明です。 「ADO」でも「DAO」でも、テーブルに登録されているデータや選択クエリを実行して取得したレコードの集まりは、 「レコード セット(Recordset)オブジェクト」で管理されます。 「レコードセットのオブジェクト」は、3つの種類があります。 ①テーブルタイプ ②ダイナセットタイプ ③スナップショットタイプ です。 それぞれについて、説明します。 19 第1章 SQL Server とは ①テーブルタイプ テーブルに登録されているレコードの集まりを表します。 新規にレコードを追加したり、登録されているデータを更新したりすることができます。 「テーブルタイプ」では、Access のリンクテーブルや、ODBC から SQL Server へのリンクテーブルではエラーが発生 します。注意が必要です。 項目 コード 結果 ADO Dim cn As adodb.Connection Dim rst As adodb.Recordset DAO Dim rs As DAO.Recordset Set db = CurrentDb() Set cn = CurrentProject.Connection Set rst = New adodb.Recordset rst.Open "TEST", cn, adOpenKeyset, adLockOptimistic, adCmdTableDirect ・同じ Access の中にあるテーブルは動く。 ・同じ Access の中にあるクエリは動く。 ・Access のリンクテーブルは動く。 ・SQL Server で ODBC のリンクテーブルは動く。 Set rs = db.OpenRecordset("TEST", dbOpenTable) ・同じ Access の中にあるテーブルは動きます。 ・同じ Access の中にあるテーブルのクエリは動かない。 ・Access のリンクテーブルは動かない。 ・SQL Server で ODBC のリンクテーブルは動かない。 ②ダイナセットタイプ 選択クエリを実行して取得したレコードの集まりを表します。 新規にレコードを追加したり、登録されているデータを更新したりすることができます。 これらの編集結果は、レコードセットのもとになったテーブルに反映されます。 項目 コード ADO Dim cn As adodb.Connection Dim rst As adodb.Recordset DAO Dim rs As DAO.Recordset Set db = CurrentDb() 結果 Set cn = CurrentProject.Connection Set rst = New adodb.Recordset Set rs = db.OpenRecordset("TEST", dbOpenDynaset) rst.Open "TEST", cn, adOpenKeyset, adLockOptimistic ・同じ Access の中にあるテーブルは動く。 ・同じ Access の中にあるテーブルのクエリは動く。 ・Access のリンクテーブルは動く。 ・SQL Server で ODBC のリンクテーブルは動く。 ・同じ Access の中にあるテーブルは動く。 ・同じ Access の中にあるテーブルのクエリは動く。 ・Access のリンクテーブルは動く。 ・SQL Server で ODBC のリンクテーブルは動く。 ③スナップショットタイプ 選択クエリを実行して取得したレコードの集まりです。 レコードセットの内容を更新することはできません。 項目 コード ADO Dim rst As adodb.Recordset DAO Dim rs As DAO.Recordset Set cn = CurrentProject.Connection Set rst = New adodb.Recordset Set db = CurrentDb() Set rs = db.OpenRecordset("TEST", dbOpenSnapshot) 結果 rst.Open "TEST", cn, adOpenStatic, adLockReadOnly ・同じ Access の中にあるテーブルは動く。 ・同じ Access の中にあるテーブルのクエリは動く。 ・Access のリンクテーブルは動く。 ・SQL Server で ODBC のリンクテーブルは動く。 20 ・同じ Access の中にあるテーブルは動く。 ・同じ Access の中にあるテーブルのクエリは動く。 ・Access のリンクテーブルは動く。 ・SQL Server で ODBC のリンクテーブルは動く。 第2章 SQL Server 2016 Express のインストール 「SQL Server 2016 Express」のインストールについて説明します。 今回は、 「Windows10」のパソコンにインストールします。 21 第2章 SQL Server 2016 Express のインストール 2.1 SQL Server 2016 の種類 「SQL Server」の最新バージョンは、 「SQL Server 2016」です。 まず「SQL Server 2016」の種類について説明します。 マイクロソフト社のホームページから抜粋しています。 (1) SQL Server 2016 の種類 インターネットから抜粋しています。 通常の製品には、次のようなものがあります。 種類 Enterprise Standard 規模 大規模 小・中規模 Developer 開発用 Express 小規模 内容 SQL Server 2016 の全機能を提供する大規模環境向けエディションです。 強化されたパフォーマンスと基本的な可用性、最大 24 コアまで対応するスケーラビリテ ィ、テーブルモデリング機能、多層防御や機密データへのアクセス制御が可能な堅牢なセ キュリティ機能などを享受したい企業向けのエディションです。 SQL Server 2016 の全機能と共に、ミッションクリティカルなアプリケーションの構築 やテストが可能な開発者向けの無償配布エディションとなります。 コストをかけずにデータベースアプリケーションを構築、展開したい小規模環境に向けて 無償配布されるエディションです。 この中で、 「SQL Server 2016 Express」は、無償で提供されています。 「SQL Server 2016 Express」は、 「小・中規模システム」には、最適ですので、この「データベース」の使用方法を説明してゆき ます。 (2) SQL Server 2016 のコンポーネント 「SQL Server 2016」のコンポーネントです。 コンポーネントとは、日本語で「部品」という意味です。 「SQL Server 2016」がどのような部品から構成されているかです。機能のようなものです。 ●サーバーコンポーネント コンポーネント SQL Server データベース エンジン Analysis Services Reporting Services Integration Services マスター データ サービス 説明 SQL Server データベース エンジンには、データを格納、処理、およびセキュリティで保護 するための主要サービスであるデータベース エンジン、レプリケーション、フルテキスト検 索、リレーショナル データと XML データの管理ツール、および Data Quality Services (DQS) が含まれます。 Analysis Services には、オンライン分析処理 (OLAP) アプリケーションおよびデータ マイ ニング アプリケーションを作成、管理するためのツールが含まれます。 Reporting Services には、表形式、マトリックス形式、グラフィカル形式、および自由形式 のレポートを作成、管理、配置するためのサーバー コンポーネントとクライアント コンポー ネントが含まれます。 Reporting Services は、レポート アプリケーション開発用の拡張可 能プラットフォームとしても使用できます。 Integration Services は、データを移動、コピー、変換するためのグラフィカル ツールおよ びプログラミング可能なオブジェクトのセットです。 Integration Services 用の Data Quality Services (DQS) コンポーネントも含まれています。 マスター データ サービス (MDS) は、マスター データ管理のための SQL Server ソリュー ションです。 MDS は、あらゆるドメイン (製品、顧客、アカウント) を管理するように構成 できます。MDS には、データの管理に使用できる Excel 用アドイン のほかに、階層、きめ 細かいセキュリティ、トランザクション、データのバージョン管理、およびビジネス ルール が含まれています。 22 2.1 R サービス JSON サポート PolyBase クエリサービス SQL Server 2016 の種類 統計解析の主流である R 言語を使用した分析が、データベースエンジン内で可能なります。 データベースエンジンが JSON フォーマットを理解することにより、データの JSON フォー マットへの変換や構造化データの JSON フォーマットなどが可能になります。 T-SQL を使用してリレーショナルデータだけではなく、非リレーショナルデータへのアクセ スを可能にする機能です。 ●管理ツール コンポーネント SQL Server Management Studio SQL Server 構成マネージャー SQL Server Profiler データベース エンジン チューニングアドバイザー Data Quality クライアント SQL Server Data Tools 説明 SQL Server Management Studio は、SQL Server のコンポーネントを構成、管理、開発し、 それらのコンポーネントへアクセスするための統合環境です。 Management Studio では、 すべてのスキル レベルの開発者と管理者が SQL Server を使用できます。 SQL Server 構成マネージャーを使用して、SQL Server サービス、サーバー プロトコル、 クライアント プロトコル、およびクライアントの別名に関する基本的な構成管理を行います。 SQL Server Profiler には、データベース エンジンのインスタンス、または Analysis Services のインスタンスを監視するためのグラフィカル ユーザー インターフェイスが備わ っています。 データベース エンジン チューニング アドバイザーは、最適なインデックスのセット、イン デックス付きビュー、およびパーティションの作成に役立ちます。 DQS サーバーに接続し、データ クレンジング操作を実行するための、非常にシンプルで直 感的なグラフィカル ユーザー インターフェイスを備えています。データ クレンジング操作 の際に行われるさまざまな処理を一元的に監視することもできます。 SQL Server Data Tools は、ビジネス インテリジェンス コンポーネント (Analysis Services、Reporting Services、Integration Services) のソリューションをビルドするための IDE です。 (以前の Business Intelligence Development Studio)。 接続コンポーネント SQL Server Data Tools には、Visual Studio 内で SQL Server プラットフォーム (社内お よび社外の両方) のデータベース設計を行うデータベース開発者用の統合環境である "デー タベース プロジェクト" も含まれます。 データベース開発者は、強化された Visual Studio のサーバー エクスプローラーを使用して、データベース オブジェクトおよびデータの作成ま たは編集、クエリの実行を簡単に行うことができます。 クライアントとサーバー間の通信用コンポーネント、および DB-Library、ODBC、OLE DB 用のネットワーク ライブラリをインストールします。 この中で重要なのは、赤印のコンポーネント(部品)です。 23 第2章 SQL Server 2016 Express のインストール 2.2 SQL Server 2016 Express とは 「SQL Server 2016 Express」について説明します。 (1) SQL Server 2016 Express の制限 「SQL Server 2016 Express」は無料で提供されていますので、通常版(有料)に比較して幾つかの制限があります。 「Standard」と比較します。 項目 ●性能/スケーラビリティ 同時利用可能な物理プロセッサの最 大数 インスタンスに対しての利用可能な メモリの最大容量 データベースのサイズ上限 フェイルオーバー・クラスタリング データベース・ミラーリング バックアップ時の圧縮 Express Standard 1 ソケット(物理プロセッサー数)または 4 コアの小さい方 1Gbytes 4 ソケットまたは 24 コアの小さい方 10Gbytes (2016/2014/2012/2008 R2) 4Gbytes(2008 以前) × ×(ミラーリングの監視のみ可能) × 事実上無制限(524Pbytes) 128Gbytes ○ ○ ○ 次の内容は「SQL Server 2008 R2」ですが、 「SQL Server 2016」でも内容はあまり変わっていないと思います。 参考にしてください。 項目 Express ●仮想化のサポート 仮想マシンでの動作 ○ Hyper-V ライブ・マイグレーション × ●レプリケーション レプリケーション △(データの受け取りのみ可能) ●レポート機能(Reporting Services) データ・ソースとして利用可能なSQL Express のみ Server レポート履歴や実行スナップショッ × ト、キャッシング ●管理機能 ポリシー・ベースの管理 ○ PowerShell のサポート ○ GUI 管理ツール △(スケジュール管理タスクが使えない (SQL Server Management Studio) など制限あり) SQL Server インポート/エクスポー ○ ト・ウィザード メンテナンス作業の定期的な自動実 × 行(メンテナンス・プラン) DB エンジンからの自動的なメール送 × 信(データベース・メールまたは SQL Mail) DB エンジンのチューニング・アドバ × イザ イベント監視・分析用 GUI ツール ×(Standard 以上のエディションを使っ 24 Standard ○ ○ ○ すべてのエディション ○ ○ ○ ○ ○ ○ ○ ○ ○ 2.2 (SQL Server Profiler) ●そのほか フルテキスト検索 OLAP 分析 データ・マイニング Extract/Transform/Load(ETL) SQL Server 2016 Express とは た Express のエンジンのプロファイルは 可能) ○(with Advanced Services エディショ ンのみ) × × × ○ ○(制限あり) ○(制限あり) ○(制限あり) 重要な点は、 ①Express は、CPU のプロセッサーが「1 つ」 (1CPU)しか使えません。 ②メモリーは、 「1ギガバイト」です。 ③「データベース」のサイズの上限は、 「10 ギガバイト」です。 などです。 「データベース」のサイズの上限が、 「SQL Server 2008 R2 Express」から、 「10 ギガバイト」になりました。 「SQL Server 2016 Express」も、 「10 ギガバイト」です。 どのくらいか想像できませんが、例があります。 新聞の朝刊部数で、約 2 万 6200 部、テキストベースの BBS 投稿に換算して、約 440 万投稿だそうです。 使用する「データベース」の件数にもよりますが、小規模なシステムでは、十分な機能だと思います。 使用してみて、処理時間などや管理の問題が出るようであれば、 「Express」から「Standard」などにアップグレードできますの で、その時点で検討してもよいと思います。 管理ツールとして GUI(グラフィカルユーザーインタフェース)があります。 「SQL Server Management Studio」です。 この GUI で簡単に、 「SQL Server」を管理することができます。 (2) SQL Server 2016 Express Edition の種類 「SQL Server 2016 」は、64 ビットしかありません。 「SQL Server 2016 Express」も 64 ビットのみです。 64 ビットのパソコンやサーバーにのみインストールすることが出来ます。 ●64 ビット用です。 「SQL Sever 2016 Express」は、 「SQL Server Management Studio」(SSMS)が、独立したので、以下の 3 つになりました。 1 SQL Sever 2016 Express の種類 LocalDB 2 Express 3 Express with Advanced Services 内容 開発者向けで、ユーザーモードで動作するので必 要な時のみ起動します。軽量ですが、T-SQL 言語 等は上位のものと互換です。2005 Express で導 入されたユーザーインスタンスの機能をサポー トするので、Access の MDB ファイルを扱うの と同じような感覚でデータベースを手軽に扱え ます。 SQL Server のデーターベースエンジンのみを インストールします。 Express に、フルテキスト検索、Reporting Services の機能が追加されます。 25 第2章 SQL Server 2016 Express のインストール 「SQL Server 2016 Express」のデータベースをインストールするためには、 「2」の「Express」をインストールします。 ファイル名は、 「SQLServer2016-SSEI-Expr.exe」 (3.1MB)になります。 別途、 「SQL Server Management Studio」をインストールします。 1 SQL Sever 2016 Express の 管理ツール SQL Server Management Studio 内容 「SQL Server 2016 Express」を管理するための グラフィカル管理ツール(GUI)です。 26 2.2 SQL Server 2016 Express とは (3) SQL Server 2016 Express が動くシステム要件 「SQL Server 2016 Express」が動く、 「システム要件」は次のようになっています。 つまり、次の「OS」(オペレーティングシステム)が入っていないと「SQL Server 2016 Express」はインストール出来ませんよと いうことです。 OS(オペレーティングシステム) システム CPU メモリー ハードディスク ・Windows 10 ・Windows 8 ・Windows 8.1(マイクロソフトの別ページに書いていました。 ) ・Windows Server 2012 ・Windows Server 2012 R2 ・64 ビットシステム ・1 GHz 以上の Intel 互換のプロセッサ ・512MB 以上のメモリ ・4.2GB のハードディスクの空き容量 ●参考ですが、 「SQL Server 2014 Express」 (SP1)のシステム要件も追加しておきます。 OS(オペレーティングシステム) システム CPU メモリー ハードディスク ・Windows 7 ・Windows 7 Service Pack 1 ・Windows 8 ・Windows 8.1 ・Windows Server 2008 R2 ・Windows Server 2008 R2 SP1 ・Windows Server 2012 ・Windows Server 2012 R2 ・32 ビットシステム ・64 ビットシステム ・1 GHz 以上の Intel 互換のプロセッサ ・SQL Server Express with Tools および SQL Server Express with Advanced Services は 512 MB 以上、SQL Server Express with Advanced Services と共にインストールされる Reporting Services は 4 GB 以上 ・4.2GB のハードディスクの空き容量 ●参考ですが、 「SQL Server 2012 Express」のシステム要件も追加しておきます。 OS(オペレーティングシステム) システム CPU メモリー ハードディスク ・Windows Vista Service Pack2 ・Windows 7 Service Pack1 ・Windows 8 ・Windows Server 2008 Service Pack2 ・Windows Server 2008 R2 Service Pack1 ・Windows Server 2012 ・32 ビットシステム ・64 ビットシステム ・Intel 1 GHz または同等の互換プロセッサを搭載したコンピュー タ(2GHz 以上を推奨) ・1.4GHz 以上のプロセッサを推奨 ・512MB 以上のメモリ(2GB 以上を推奨) ・2.2GB のハードディスクの空き容量 27 第2章 SQL Server 2016 Express のインストール (4) SQL Server 2016 Express が動くソフトウェアの要件 「Windows10」に、 「SQL Server 2016 Express」をインストールする場合は、追加のソフトウェアのインストールは必要ありま せんでした。 しかし、 「Windows8、8.1」や「Windows Server 2012」などでは、わかりません。 「SQL Server 2012 Express」をインストールしている途中で、 「セットアップサポートルール」が表示される場合があります。 追加で必要なソフトウェアが表示されます。 その時は、必要なソフトウェアを、グーグルで検索してインストールしてください。 マイクロソフト社のホームページからダウンロードしてインストールしてください。 「SQL Server 2016 Express」に必要なソフトウェアは、次のようになっています。 コンポーネント フレームワーク2 必要なソフトウェア ・NET Framework 4.6 28 2.3 SQL Server 2016 Express のインストール 2.3 SQL Server 2016 Express のインストール これから、 「SQL Sever 2016 Express」のインストールを始めます。 ダウンロードする時点で一番新しいものをインストールします。 2016 年 6 月時点では、 「SQL Sever 2016 Express」が一番、最新のものです。 「Windows10」に、インストールするやり方について説明します。 <<注意事項>> 「SQL Server 2016」は、64 ビットしかありません。 64 ビットのパソコンや、サーバーにのみインストールすることが出来ます。 (1) SQL Server 2016 Express のダウンロード ①「インターネットエクスプローラ」や「ファイヤーフォックス」 、 「クローム」などのブラウザでグーグルの検索窓を表示 させます。今回は「インターネットエクスプローラ」で説明します。 ②検索で「SQL Sever 2016 Express download」を入れて検索します。 ③次のような画面が表示されます。 ④「Download Microsoft SQL Server 2016 Express from . . . 」が上位に表示されます。 ⑤クリックします。 ③ ④ ⑥次の画面が表示されます。 「言語を選択」が日本語になっていない場合は、 「日本語」を選択します。 ⑦「ダウンロード」をクリックします。 ⑥ ⑦ 29 第2章 SQL Server 2016 Express のインストール 直接、次のホームページをクリックしてもよいです。 https://www.microsoft.com/ja-JP/download/details.aspx?id=52679 ⑧次の画面が表示されます。 ページの下に、実行するか保存するか聞いてきます。 今回は、一度、保存します。 ⑧ ⑨「保存」をクリックしてファイルを保存します。 「保存」の横の矢印のドロップダウンをクリックして「名前を付けて保存」をクリックして、保存したいフォルダーに保 存します。 ファイル名は、 「SQLServer2016-SSEI-Expr.exe」 になります。 30 2.3 SQL Server 2016 Express のインストール (2) SQL Server 2016 Express のインストール 「SQL Server 2016 Express」は、 「データベース」と、 「Managemant Studio」が分かれています。 別々にインストールする必要があります。 まず、 「データベース」をインストールします。 ①保存した、 「SQLServer2016-SSEI-Expr.exe」をダブルクリックして実行します。 ②「ユーザーアカウント制御」が表示される場合は、 「はい」をクリックします。 ③以下の画面が表示されます。 ④中央の「カスタム」をクリックします。 ③ ④ ⑤以下の画面が表示されます。 メディアの場所は自動で設定されますのでそのままでよいです。 ⑥「次へ」をクリックします。 ダウンロードが始まります。 ⑤ ⑥ 31 第2章 SQL Server 2016 Express のインストール ⑦次の画面が表示されます。 「SQL Server インストールセンター」の画面です。 初めてですので、 「SQL Server の新規スタンドアロン インストールを実行するか、既存のインストールに機能を追加」 をクリックします。 ⑦ ⑧「セットファイルのインストール」が表示されます。 問題が無ければ、次の画面に進みます。 ⑨「インストールルール」が表示されます。 問題が無ければ、次の画面に進みます。 <<注意事項>> ・ 「Microsoft Update」が表示される場合があります。 必要な更新プログラムです。 「Microsoft Update を使用して更新プログラムを確認する」にチェックを入れて、 「次へ」をクリックします。 ・ 「インストールルール」が表示される場合があります。 「SQL Server 2016 Express」をインストールするのに必要な、ソフトウェアが不足している場合や問題がある場合に 「セットアップルール」が表示される場合があります。 「失敗」で表示されています。 「失敗」のソフトウェアについては、グーグルから検索して、ダウンロードしてインストールします。 全部、インストールしましたら、再度「再実行」をクリックします。 問題がなければ、次の画面が表示されます。 私は、 「ファイアウォール」に警告が表示されましたので、取りあえず「無効」にしました。 「コントロールパネル」の「Windows ファイアウォール」で、 「プライベート」 「パブリック」を無効にしました。 ⑩次のライセンス条項が表示されます。 ⑪「ライセンス条項に同意します」にチェックをいれます。 ⑫「次へ」をクリックします。 ⑩ ⑪ ⑫ 32 2.3 SQL Server 2016 Express のインストール ⑬次のような「機能の選択」が表示されます。 規定でよいと思います。 インストールするディレクトリも特に問題なければそのままでよいと思います。 ⑭「次へ」をクリックします。 ⑬ ⑭ ⑮「インスタンスの構成」が表示されます。 「インスタンス」とは、 「SQL Sever」の名前です。 Express は、既定で「名前付きインスタンス」になっています。 「名前付きインスタンス」は、複数作成することができます。 「コンピュータ名¥名前付きインスタンス名」で、 「SQL Server」に接続することができます。 特に問題なければ、そのままでよいと思います。 セットアップの規定値の、 「インスタンス」は「SQLExpress」になっています。 ⑯「次へ」をクリックします。 ⑮ ⑯ 33 第2章 SQL Server 2016 Express のインストール ⑰次の「サーバーの構成」が表示されます。 ⑰ ⑱ <<注意事項>> 上の例では、 「SQL Server データベースエンジン」のアカウント名が「NT Service¥MSSQL$SQLEXPRESS」になっています。 「SQL Server Browser」のアカウント名が「NT AUTHORITY¥LOCAL SERVICE」になっています。 「Windows10」にこのままインストールすると、インストールの最後に以下のエラーが発生しました。 「次のエラーが発生しました。 データベースエンジンの復旧ハンドルの待機に失敗しました。考えられる原因については、SQL Server エラーログを参 照してください。 」 です。 ですので、 「SQL Server データベースエンジン」のアカウントを「NT AUTHORITY¥NETWORK SERVICE」に変更 しました。 以下やり方です。 ⑱「SQL Server データベースエンジン」のアカウントの横のドロップダウン(下矢印)をクリックして「<<参照. . .>>」 をクリックします。 ⑲「詳細設定」をクリックします。 ⑳以下の画面が表示されます。 ㉑「検索を」クリックします。 ⑳ ㉑ 34 2.3 SQL Server 2016 Express のインストール ㉒以下の画面が表示されます。 ㉒ ㉓「名前」の中から「NETWORK SERVICE」を選択して「OK」をクリックします。 ㉓ ㉓ ㉔以下のようになります。 ㉕「OK」をクリックします。 ㉔ ㉕ 35 第2章 SQL Server 2016 Express のインストール ㉖以下のようになります。 ㉖ ㉗ ㉗「次へ」をクリックします。 <<注意事項1>> 「Windows10」では、 「アカウント名」は、上のように規定値で、表示されましたが、ほかの OS では、空白になる場合 があります。 その場合は、 ・ 「SQL Server データベースエンジン」のアカウントは「NT AUTHORITY¥NETWORK SERVICE」 ・それ以外は、 「NT AUTHORITY¥LOCAL SERVICE」 に設定してみてください。 パスワードは何も入力していません。 <<注意事項 2>> 「Windows Server 」にドメインコントローラーがインストールされている場合は、エラーがでる場合があります。 「SQL Server 2008 R2 Express」をインストールしたときは、エラーが出ました」 。 次の3つのエラーです。 ドメイン コントローラーでは、ビルトイン Windows サービス アカウント (Local Service または 1 Network Service) を Reporting Services のサービス アカウントとして使用できません。 フルテキスト サービス アカウントは、Windows <バージョン> ドメイン コントローラーのドメイン アカ 2 ウントである必要があります。 Microsoft.SqlServer.Configuration.Fulltext.InputValidationException: フルテキスト サービス アカウン 3 トは、Windows <バージョン> ドメイン コントローラーのドメイン アカウントである必要があります。 マイクロソフトは、ドメインコントローラーのサーバーには、 「SQL Server」をインストールするのを推奨していないよ うです。 そのため、インストールできないようです。 ドメインコントローラーは、ユーザーの管理をおこなっています。 アカウントやパスワードのデータがありますので、可能であれば、他のサーバーに SQL Server をインストールすること を推奨しています。 ですので、次のやり方でも「SQL Server」をインストールできましたが、そのリスクを了解していただいてインストール をお願いいたします。 ・サーバーには、 「Administrator」 「パスワード」 「ドメイン名」でログオンします。 ・前ページの「機能の選択」で、 「Reporting Service」のチェックを外します。 「Reporting Service」は、SQL Server でレポートを作る機能ですが、使いませんので外します。 ・ 「サーバーの構成」でエラーになります。 「SQL フルテキスト フィルターデーモンランチャー」です。 36 2.3 SQL Server 2016 Express のインストール ・ 「SQL フルテキスト フィルター デーモンランチャー」の横の「アカウント名」のドロップダウンをクリックしま す。 ・ 「参照」をクリックします。 ・ 「ユーザー、コンピュータまたはグループの選択」が表示されます。 ・左下の「詳細設定」をクリックします。 ・右中央の「今すぐ検索」をクリックします。 ・下の検索結果に名前(ユーザー)が表示されます。 ・ 「Administrator」を選択します。 ・ 「OK」をクリックします。 ・前の画面に戻ります。 ・そのまま「OK」をクリックします。 ・ 「アカウント名」が「ドメイン名¥Administrator」になります。 ・横の「パスワード」に、Administrator のパスワードを入力してください。 ・他のサービスは、 「SQL Server Database Engine」は「NT AUTHORITY¥SYSTEM」 「SQL Server Browser」は「NT AUTHORITY¥LOCAL SERVICE」 を選択します。 パスワードは入れません。 ・ 「次へ」をクリックします。 次の画面に行けると思います。 ・ 「データベース エンジン」の構成で、 「SQL Server 管理者の指定」で「ドメイン名¥Administrator」 になって いますが、そのままでよいと思います。 続けて教材の設定をおこなってください。 ・ 「Reporting Service 構成」はありません。 ㉘次の「データベース エンジンの構成」が表示されます。 ㉙認証モードを「混合モード(M)(SQL Server 認証と Windows 認証)」にします。 ㉘ ㉙ 37 第2章 SQL Server 2016 Express のインストール ㉚次の画面になります。 ㉛「SQL Server」の「システム管理者」 (sa)アカウントのパスワードを入力します。 「パスワードの入力」 「パスワードの確認入力」にパスワードを入力してください。 パスワードは、長いものにしてください。 このパスワードは重要ですので忘れないでください。 ㉜「次へ」をクリックします。 ㉚ ㉛ ㉜ ㉝「インストールの進行状況」が表示されインストールが始まります。 少し、時間がかかります。 ㉞セットアップが終了すると次の画面が表示されます。 「SQL Server 2016 のインストールが正常に完了しました: (製品の更新プログラムを含む) 」と表示されます。 ㉟「状態」が「成功」になっているのを確認します。 ㊱「閉じる」をクリックします。 ㉞ ㉟ ㊱ ㊲「SQL Server インストールセンター」に戻ります。 38 2.3 SQL Server 2016 Express のインストール (3) SQL Server Management Studio のインストール 次に、 「SQL Server Management Studio をインストールします。 ①「SQL Server インストールセンター」を表示します。 ②「SQL Server Management Tools のインストール」をクリックします。 ② ③以下のようにブラウザが立ち上がって、ダウンロードのページを表示します。 ④中央の「ダウンロード SQL Server Management Studio・・・・・」をクリックします。 教材を作成した時点では、2016 年 4 月版でしたが、すぐに 7 月版がリリースされました。 ③ ④ 直接、ホームページを表示したい場合は、以下をクリックします。 https://msdn.microsoft.com/ja-jp/library/mt238290.aspx 39 第2章 SQL Server 2016 Express のインストール ⑤以下の画面が表示されます。 ⑥今回は保存します。 「保存」の横のドロップダウンをクリックして「名前を付けて保存」をクリックして、フォルダーに保存します。 ⑤ ⑥ ⑦保存したフォルダーを開いて 「SSMS-Setup-JPN.exe」をダブルクリックして実行します。 ⑧以下の画面が表示されます。 ⑨「インストール」をクリックします。 ⑧ ⑨ ⑩「ユーザーアカウント制御」が表示される場合は、 「はい」をクリックします。 ⑪インストールが始まります。 少し、時間がかかります。 40 2.3 SQL Server 2016 Express のインストール ⑫インストールが完了すると以下の画面が表示されます。 ⑬「閉じる」をクリックします。 インストールが終わりました。 ⑫ ⑬ 41 第2章 SQL Server 2016 Express のインストール 2.4 「Microsoft SQL Server Management Studio」の使い方 無料レポートは、ここまでです。 いかがでしたでしょうか。 教材の雰囲気がお分かりいただけたと思います。 あなたにとって、この教材が業務改善の一助になれば幸いです。 宜しくお願い申し上げます。 42