Excel+MySQL連携:2 ODBCでMySQLへ接続してデータベースの情報を見る方法

ODBCforExcel12

エクセルとMySQLの連携に関する備忘録です。今回は下記(2)について書きます。何かの参考になれば幸いです^^

(1)さくらのレンタルサーバのMySQLへ自分のwindowsパソコンからsshで接続する方法
(2)ODBCでMySQLへ接続してデータベースの情報を見る方法 ←今回の投稿
(3)Power QueryでMySQLへ接続してデータベースの情報を見る方法
(4)Excel VBAでMySQLへ接続してデータベースの情報を見る方法
(5)Excel VBAでMySQLへ接続してCRUD操作する方法(予定)

今回は「ODBCでMySQLへ接続してデータベースの情報を見る方法」です。この方法は、基本的にエクセルがあれば誰でも可能な方法です。(3)の方法はエクセルのエディションによってできる、できないがありますので次回に書きたいと思います。

それでは、早速いきましょう~!

ステップ1:MySQLのODBCドライバをインストールしよう

はじめに、ODBCとは何?と思うかもしれませんが、用語の解説はウィキペディア(ODBCとは)を参照ください。

それでははじめます。
まず、MySQLコネクタから「ODBC Driver for MySQL (Connector/ODBC)」をダウンロードします。ダウンロードという部分をクリックします。(下図参照)
ODBCforExcel1
次の画面で、エクセルが32bitなら上段の32bit対応のものを、エクセルが64bitなら下段の64bit対応のものをダウンロードします。
ODBCforExcel2

ご自身のエクセルが何bit対応なのか調べるには、Excel 2010の場合はファイル>ヘルプの画面で確認できます。以下は表示例です。エクセル 2013の方はネットで「エクセル 2013 バージョン 確認」などで調べてみてください。
ODBCforExcel3

私の場合は32bit対応なのでそれで進めます。
ダウンロードボタンをクリックすると次の画面になりますので、下方にある「No thanks, just start my download.」をクリックします。無料の会員登録をしたい方は「Sign Up >>」をクリックしてください。ここでは、会員登録なしで進めます。
ODBCforExcel4
msiファイルがダウンロードされますので、ダブルクリックで実行し、インストールを完了させます。

ステップ2:インストールしたODBCドライバを確認しよう

ここはちょっとややこしいですが、書かれているとおりに確認してみてください。
まずはじめに、ご自身のwindowsのバージョンを確認しましょう。ここではwindows7の場合を示します。他についてはネット等で確認ください。
windows7の場合は、コントロールパネル>システムとセキュリティ>システムのところで確認できます。以下はその表示例で、64bitということが確認できます。
ODBCforExcel5

windowsが32bitの場合のODBCドライバの確認方法

「プログラムとファイルの検索」の入力欄に「odbcad32.exe」と入力し検索します。以下のようなウィンドウが表示され、ドライバーのタブに「MySQL ODBC~~」という表記があればちゃんとインストールされています。
※手元に32bitのwindowsが無いため、詳細は割愛します。
ODBCforExcel6

windowsが64bitの場合のODBCドライバの確認方法

「C:¥Windows¥SysWOW64¥odbcad32.exe」のodbcad32.exeをダブルクリックで実行してください。そうすると次のウィンドウが表示されます。続けてドライバータブをクリックし「MySQL ODBC 5.3 Unicode Driver」があればインストールは成功しています。ここで、「5.3」はバージョン番号なので今後変わるかもしれません。
ODBCforExcel7

ステップ3:ユーザーDSNにデータソースを追加しよう

私が64bitのwindowsなので以降はそれを前提で進めます。
まず、前記した「C:¥Windows¥SysWOW64¥odbcad32.exe」のodbcad32.exeをダブルクリックで実行してください。そして、ユーザーDSNタブをクリックし、「追加」ボタンをクリックします。
ODBCforExcel8
次に表示されたウィンドウで「MySQL ODBC 5.3 Unicode Driver」を選択し「完了」をクリックします。
ODBCforExcel9
次に表示されたウィンドウで以下のように情報を入力します。
ODBCforExcel10
ここで特に注意する点は下記のところです。

Data Source Name(データソースの名前)とDescription(説明)は適当に入力します。
TCP/IP Serverには「localhost」を入力してください。PortはMySQLデフォルトの「3306」でOKです。なぜlocalhostでいいのか、なぜ3306なのかは前回の記事に書いていますので参照ください。

下の方のUserにはデータベースの「データベースユーザ名」を、Passwordにはデータベースの「パスワード」を入力します。データベースユーザ名はさくらのレンタルサーバのコントロールパネルから確認できます。パスワードはワードプレスインストール時に設定しているかと思いますが、忘れてしまった場合はコントロールパネルの「接続パスワード変更」から変更できます(^^)/

以上、入力しましたら最後に「OK」をクリックします。

以下のようにデータソースが追加できていればOKです。
ODBCforExcel11

ステップ4:PortForwarderを起動しよう

前回の記事で導入したPortForwarderを起動します。起動することで、自分のパソコンからさくらのレンタルサーバにSSH接続し、localhostのポート:3306にアクセスがあるときは、さくらのレンタルサーバのデータベースサーバのポート:3306に自動で転送することができます。
タスクトレイにPortForwarderのアイコンがあれば接続はOKです。

ステップ5:エクセルでMySQLにアクセスしデータベースのデータを見てみよう

やっとこさ、エクセルで見るフェーズにきました(^_^;)少々長かったですね。

では早速エクセルを起動しましょう♪あ、ちなみに今回はエクセル2010を例にしています。一応、2003でも動作確認できています。
起動できたら、下のようにデータタブ>その他のデータソース>データ接続ウィザードの順にクリックします。
ODBCforExcel12
続けて、以下のように選択していきます。
ODBCforExcel13
ODBCforExcel14
ここで、データベースとテーブルの選択のウィンドウになります。今回はワードプレスのデータベースではなくサンプルのデータベースを準備しましたのでそのデータを見てみましょう。
ODBCforExcel15
サンプルのデータベースを選択し、その中のテーブル「goods」を選択します。
ODBCforExcel16
続けて、以下のウィンドウで「完了」をクリックします。
ODBCforExcel17
すると、小さなウィンドウが出てきます。どこにデータを挿入するか指定できます。今回はB4セルに挿入してみましょう。
ODBCforExcel18
挿入した結果です。エクセルのテーブルとして挿入されていますね。
ODBCforExcel19

え~っと、はい、これで今回は終了です!
データが少ないのでインパクトがないですが、ちゃんとさくらのレンタルサーバにあるデータベース(MySQL)からデータを引っ張ってきてエクセル上に表示させることができました。

ただ、SQL文とか使って表示させるデータをカスタマイズしたいと思う方もいると思います。2010では以下のようなQueryウィザードなるものもありますが、実は使ったことがありません。何となく使いづらそうです。。。
ODBCforExcel20

それに代わるものとしてPower Queryなるものがマイクロソフトからエクセルのアドインとして提供されています。これを利用するとデータの表示を柔軟に変えることができます。変えた内容をクエリとして保存しておけば、見たい時に更新するだけでOKです。

ただし、Power QueryにはExcelのエディションによって使える使えないがありますのでそれも含めて次回まとめてみます。

いや~、しかし長かった(;O;)

ちなみに、

ワードプレスのデータもちゃんと見れるよってことで投稿データをエクセルに取り込んでみました。バッチリ見れますね^^
ODBCfoeExcel21

■/■/■/■/■/■/■/■/■/■/■/■/■
【編集後記】
とある件で契約書を交わしておらず
散々な目に。
これも勉強か。
しかし勉強代高くついたなぁ~(´・ω・`)

【ぬちぐすい】
沖縄の方言で「命の薬」。
意味の幅は広く、かけがえのないモノ、
人、瞬間に出会えた時に感じる
「ありがとう」の気持ち。

こんな状況でも支えてくれる
嫁さんに感謝。

【ブログ毎日更新】
EX-ITさんに習い、
毎日更新を始めました。
2015年12月3日から開始
《現在 [blogupdate] 日経過》

■/■/■/■/■/■/■/■/■/■/■/■/■

ODBCforExcel12

いつも読んで頂きありがとうございます!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です