スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Tag:スポンサー広告 

【Ruby】ActiveRecordを使ってみる

前回の記事でRubyからMysqlへの接続、クエリーの実行などMysqlを扱う実験をやってみました。

今回はRubyのO/RマッパーであるActiveRecordを使ってMysqlを扱ってみます。

環境はFedoraCore10になります。

【ActiveRecordのインストール】

gem install activerecord

【ActiveRecordにおけるテーブルのルール】
  • 主キーをオートナンバー型で定義する(必須)
  • 主キーのカラム名は'id'(推奨)
  • テーブル名は複数形(推奨)
に注意してサンプルをつくって行きます。
上のルールはRailsの「設定より規約」の代表的な例のようですね。

【テーブルの作成】

USE test;
CREATE TABLE hoges (
    id   int(11) NOT NULL auto_increment,
    PRIMARY KEY(id),
    message varchar(256) default NULL
);

【サンプルコード】
require 'rubygems'
require 'active_record'

class Hoge < ActiveRecord::Base
    set_primary_key :id
    set_table_name :hoges
end

Hoge.establish_connection(
    :adapter => 'mysql',   
    :database => 'test'
)

test = Hoge.new
test.message = 'Hello, World'
# ちゃんとsaveメソッドを呼び出さないと保存されません
test.save

【確認】
mysql> select * from hoges;

とするとちゃんとデータが入ってることを確認できるはずです。

【感想】
ルールにさえ従っていればもはやSQL文を書かなくても直感的にデータベースが扱えるのは本当にO/Rマッパーのいいところだと思います。
難しいSQL文は解釈してもらえるのかと思ったりもしますが、そもそも複雑なSQL文をなげなきゃいけなくなってしまうような設計をしないようにすればいいような気もします。あんまり複雑にかかわり合うようなテーブル構成はあとで苦労しそうですから。。
スポンサーサイト
テーマ : プログラミング
ジャンル : コンピュータ

Tag:Ruby  Trackback:0 comment:0 

Comment

comment form
(編集・削除用):
管理者にだけ表示を許可
プロフィール

6rats

Author:6rats
こんにちは、ITベンチャーで働くエンジニアです
主に自分の周りで起きた技術的なことをメモとして書き残して行きます。
Android以外にもRuby/Ruby on RailsやFuelPHPなどなどたまにやります。基本的なスタンスとしては興味があるもしくは必要になったらいろんなことにチャレンジします。
最近はiOSアプリ開発を始めています。

購読
follow us in feedly
個人プロダクト

Androidアプリ

Twitterクライアント

Webアプリケーション

EcPriceWatch(Amazon価格の推移を計測、最安値を知らせるサービス)
Google AdSense
ブログ村
にほんブログ村 IT技術ブログへ
にほんブログ村
ブロとも申請フォーム

この人とブロともになる

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。