Sequel - A Short Example
README より、だいたいこんな感じということで、使い方の短い例。
Sequel は ActiveRecord みたいにモデルやリレーションを定義したりといろいろ出来るのですが、ここではまだ出てきませんね。 ざっと見たところ、SQL に対応する文を Ruby で書けるということなんですね。Python の SQLAlchemy とかこんな感じだったように思います。
ブロックを使ってデータベースのスキーマを定義したり、ドット ( . ) でつないで実行したりと Ruby っぽさを感じさせます。
require 'rubygems'
require 'sequel'
DB = Sequel.sqlite # メモリーデーターベース
DB.create_table :items do # テーブルを作成
primary_key :id
column :name, :text
column :price, :float
end
items = DB[:items] # データセットを作成
# テーブルにデータを入れる
items << {:name => 'abc', :price => rand * 100}
items << {:name => 'def', :price => rand * 100}
items << {:name => 'ghi', :price => rand * 100}
# レコード件数を表示
puts "Item count: #{items.count}"
# price で降順にレコードを表示
items.reverse_order(:price).print
# price の平均値を表示
puts "The average price is: #{items.avg(:price)}"Sequel - The Sequel Console へと続く...
Sequel - Ruby の ORM (オブジェクトリレーショナルマッパー)