Ruby对象映射框架:Sequel

jopen 11年前

Sequel 是一个 Ruby 语言的对象映射框架(ORM),提供了线程安全、连接池以及 DSL 语言用来构造查询和表模型。Ruby对象映射框架:Sequel

特性:

  • Sequel provides thread safety, connection pooling and a concise DSL for constructing SQL queries and table schemas.
  • Sequel includes a comprehensive ORM layer for mapping records to Ruby objects and handling associated records.
  • Sequel supports advanced database features such as prepared statements, bound variables, stored procedures, savepoints, two-phase commit, transaction isolation, master/slave configurations, and database sharding.
  • Sequel currently has adapters for ADO, Amalgalite, DataObjects, DB2, DBI, Firebird, IBM_DB, Informix, JDBC, MySQL, Mysql2, ODBC, OpenBase, Oracle, PostgreSQL, SQLite3, Swift, and TinyTDS.

require "rubygems"  require "sequel"    # connect to an in-memory database  DB = Sequel.sqlite    # create an items table  DB.create_table :items do    primary_key :id    String :name    Float :price  end    # create a dataset from the items table  items = DB[:items]    # populate the table  items.insert(:name => 'abc', :price => rand * 100)  items.insert(:name => 'def', :price => rand * 100)  items.insert(:name => 'ghi', :price => rand * 100)    # print out the number of records  puts "Item count: #{items.count}"    # print out the average price  puts "The average price is: #{items.avg(:price)}"

项目主页:http://www.open-open.com/lib/view/home/1358753481286