SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

直近開催のイベントはこちら!

EnterpriseZine編集部ではイベントを随時開催しております

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けの講座「EnterpriseZine Academy」や、すべてのITパーソンに向けた「新エバンジェリスト養成講座」などの講座を企画しています。EnterpriseZine編集部ならではの切り口・企画・講師セレクトで、明日を担うIT人材の育成をミッションに展開しております。

お申し込み受付中!

NetBeansで始めるRuby on Rails

Ruby on Railsでデータベースアクセスを直感的に

Webシステム開発の生産性を左右する極めて重要な鍵が、データベースアクセスです。プログラマーは多くの時間を割いてデータベースに対して読み書きするコードを書いています。この作業の短縮は開発コストの削減に直結します。 今回は、Ruby on Railsがデータベースプログラミングをどのようにしてシンプルなものにしているかを解説します。  

データベースプログラミングに挑戦しよう

 あなたは、こんな風に思いこんでいませんか。「自分はプログラマーではないので、データベースにアクセスするコードは書けない」と。

 確かに、プロフェッショナルとして活躍するには専門的な深い知識が必要です。しかし、ちょっとしたコツをつかめば誰でもデータベースを操作するプログラムを書くことができます。

 Webシステムに関わるITパーソンであれば、たとえプログラミングを仕事とすることがなくても、実地でデータベースを扱った経験がいつかきっと役に立ちます。データベースはWebシステムの中枢です。品質や性能を上げるためにも、製造コストを下げるためにも、データベースに関わる部分がどのような仕組みで作られているかを知ることが大切なのです。

 今回は、Ruby on RailsとNetBeansを組み合わせることで、読者の皆様にデータベースプログラミングの初歩を体験していただきます。なお、連載第1回「意外にかんたん! Ruby on RailsとNetBeansのインストール」で作成したRailsアプリケーションapp1を引き続き使用します。

キーワードは「直感的」

 いきなりですが、ソースコードのサンプルから見ていただきましょう。

p = Product.find(5963)

 製品に関するデータが格納されたproductsという名前のテーブル(表)を想像してください。各製品にはユニークな番号(ID)が付けられています。上記のコードは、IDが5963である製品の行を検索して、その行の内容全体を変数pにセットするというものです。

 次に、各製品に対する注文データを格納するordersテーブルを考えます。このテーブルにはproduct_idという名前の列があって、そこに製品IDが記録されています。すると、製品pに対するすべての注文のリスト(配列)は次のように取得できます。

p.orders

 そして、各注文の個数を出力するコードはこうなります。

p.orders.each do |order|
  print order.amount
end

 奇妙な2つの縦棒の存在が気になるかもしれませんが、このコード全体の意味は直感的に想像できます。注文リストのそれぞれ(each)について、繰り返しある処理をしなさい(do)とプログラムは指示しています。その処理とは、各注文(order)の個数(amount)を出力する(print)ということです。最後のendは、繰り返し処理の終端を示しています。

 現実のプログラミングはもっと複雑ですが、基本的にはこのコードの延長線上にあります。ここでは、何となく雰囲気を感じ取っていただければ十分です。

次のページ
データベーステーブルを定義する

この記事は参考になりましたか?

  • Facebook
  • Twitter
  • Pocket
  • note
NetBeansで始めるRuby on Rails連載記事一覧

もっと読む

この記事の著者

黒田 努(クロダ ツトム)

株式会社オイアクス代表取締役社長。東京大学教養学部卒。在ギリシャ日本国大使館、株式会社ザッパラス、株式会社イオレでの勤務を経て、2007 年にRuby on Rails 専門の教育・コンサルティング会社オイアクスを設立。著書に『基礎Ruby on Rails』(共著、インプレスジャパン刊、2007)...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

EnterpriseZine(エンタープライズジン)
https://enterprisezine.jp/article/detail/774 2008/10/10 11:00

Job Board

AD

おすすめ

アクセスランキング

アクセスランキング

イベント

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング