DB2でさくさく実現するRESTfulなDBアプリ(1)
RailsアプリからDB2にアクセスするための基礎知識
はじめに
第1回では、DB2 on Railsで、ActiveScaffoldを使った簡単なアプリケーションを作成することにより、DB2 on Railsで開発する際の環境の準備と簡単なRubyアプリケーションの作り方をご紹介します。第2回、第3回では、今回作成するDB2 on Railsの環境を使用した、実践的なRESTfulアプリケーションを作成することにより、RESTfulとは何かと、その利点をご紹介します。
環境の作成
本連載は、Windows XPで動作確認を行っています。本稿執筆時のRuby、Railsの最新バージョンは、Ruby 1.9、Rails 2.1.1ですが、One-Click Ruby Installerの最終リリースであるRuby 1.8.6-26 Final Releaseで安定稼働している、Ruby 1.8.6、Rails 2.0.2とDB2 9.5、ibm_db 0.10.0の組み合わせを使用します。
それでは、早速DB2 on Railsの環境をつくってみます。
DB2 9.5の無償版 Express-Cを導入
まずは、アプリケーションのデータを格納するDB2を導入します。DB2には、商用データベースと同様のパフォーマンスや機能を持ち、無償で利用できるDB2 Express-Cというエディションが用意されています。お手元にDB2がない方は、以下のリンク先よりダウンロードしておきましょう。
なお、DB2の導入手順に不安のある方は、以下の資料を参考にするとよいでしょう。
Ruby実行環境を整える
Rubyの実行環境を導入します。Windows用には、いくつかのパッケージが用意されていますが、本稿ではOne-Click Ruby Installerを使います。以下のリンク先より1.8.6-26 Final Releaseをダウンロードし、導入しておきましょう。
インストールに際して、いくつかの質問項目に答える必要があります。デフォルトの状態で進んでも問題ありませんが、念のため以下の項目を確認しながら進めてください。
・導入するコンポーネント:
「Enable RubyGems」にチェックが入っていることを確認します。RubyGemsはRubyのパッケージマネージャです。これを使ってパッケージの導入をしますので必ず確認しておきましょう。
・導入するディレクトリ:
本稿では、デフォルトの「C:\ruby」に導入している前提で解説を進めます。導入先を変更する際は、ディレクトリ名に空白や日本語を含めないほうが動作上の不具合が少ないようです。
Railsの導入
次に、Railsを導入します。先ほどRubyと一緒に導入したRubyのパッケージマネージャであるRubyGemsを使って導入します。特定のバージョン、Ruby 2.0.2を導入したいので、バージョンを指定して実行します。コマンドラインでリスト1のコマンドを入力するとインストールが開始します。
C:\ruby\bin>gem install rails -v 2.0.2 -y Bulk updating Gem source index for: http://gems.rubyforge.org Successfully installed rails-2.0.2 Successfully installed activesupport-2.0.2 Successfully installed activerecord-2.0.2
…(略)…
ibm_dbドライバの導入
次にデータベースへ接続するためのドライバを導入します。
ibm_dbは、DB2を含むIBMデータベース用のRuby on Railsドライバであり、IBMが開発しメンテナンスを行っています。0.9.4では、Rails 2.0のXMLカラムのmigrationに対応し、0.9.5では、Rails 2.1.0をサポート、最新版の0.10.0では、DB2 9.5からの新機能であるトラステッド・コンテキストをサポートするなど、バージョンアップ頻度も高く、細かなバグへの対応も迅速に行っています。このibm_dbも、RubyGemsを使って導入できます(リスト2)。
C:\ruby\bin> gem install ibm_db -y Bulk updating Gem source index for: http://gems.rubyforge.org Select which gem to install for your platform (i386-mswin32) 1. ibm_db 0.10.0 (ruby) 2. ibm_db 0.10.0 (mswin32) 3. ibm_db 0.9.5 (mswin32) 4. ibm_db 0.9.5 (ruby) 5. Skip this gem 6. Cancel installation > 2 Successfully installed ibm_db-0.10.0-mswin32 Installing ri documentation for ibm_db-0.10.0-mswin32... Installing RDoc documentation for ibm_db-0.10.0-mswin32... C:\ruby\bin>
・Ruby/Ruby on Rails でのデータベース・アプリケーション開発のサポート
ここまでで、ひととおりの道具がそろいました。ここからは実際のアプリケーション構築の準備に入ります。
データベースの作成
DB2上で、このサンプルアプリケーションのためのデータベース(rubydb)を作成します。
DB2のコマンド・ウィンドウを開き、データベースを作成します(コマンド・ウィンドウは、[スタート]―[すべてのプログラム]―[IBM DB2]―[DB2COPY1]―[コマンド行ツール]―[コマンド・ウィンドウ]で立ち上げます)。
C:\IBM\SQLLIB\BIN>db2 create database rubydb DB20000I CREATE DATABASE コマンドが正常に完了しました。 C:\IBM\SQLLIB\BIN>
| 1/4 |
RailsアプリからDB2にアクセスするための基礎知識
DB2 9.5の無償版 Express-Cを導入|Ruby実行環境を整える|Railsの導入|ibm_dbドライバもパッケージから導入できる|データベースの作成
・プロジェクトの作成と設定
プロジェクトの作成|データベース接続の設定
ActiveScaffoldプラグインの導入|モデルの作成とテーブルの作成|コントローラの作成|標準レイアウトの追加|サーバの起動と動作確認
カラム追加用スクリプトとデータベースへの反映|関連付けの作成|組織表の作成とユーザー表の修正
・組織コントローラの作成
関連付けの追加
・アプリケーションの実行・動作の確認
・次回、実践編は……
| DB2でさくさく実現するRESTfulなDBアプリ |
TechTargetジャパン
- やはりSELECT文は永遠のテーマです (2012/2/7)
Database Expertフォーラムの2012年1月のアクセスランキングをお届けします。定番の記事を一気に追い抜いてあの記事が…… - SELECT文で取り出したデータを加工して表示する (2012/1/25)
SELECT文で取り出したデータを対象に四則演算する方法など、データを見やすくする方法を解説します - 2012年は私たちが勉強会を盛り上げる! (2012/1/23)
2011年12月、データベース業界初の女子会が発足しました。そこで、女子会を盛り上げていってくれそうな2人にお話を伺いました - 複数の条件を指定してSELECT文を実行する (2012/1/13)
複数の条件を指定してSELECT文を実行する方法と、条件指定に必要な論理演算子、比較演算子の役割を解説します
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -
