ANN: Sequel 0.1.9.7 Released

S

Sharon Rosner

Sequel version 0.1.9.7 has just been released. This release includes a
number of big fixes, as well as convenience methods for opening
databases and a new method for batch inserting records. Following is a
discussion of the main changes:

New Dataset#multi_insert for batch inserting records
====================================================

The new Dataset#multi_insert method lets you process batch insertions
with ease. The records are supplied to the method as an array of
hashes, and the inserts are wrapped in a transaction. Here's an
example:

DB[:items].multi_insert(records)

You can also specify a :commit_every option that causes the method to
split the records array into batches that will be inserted using
separate transactions:

DB[:items].multi_insert(records, :commit_every => 1000)

Using the :commit_every option when inserting a large amount of
records can greatly improve performance and is highly recommended.

(Thanks to Victor "Zverok" Shepelev for suggesting this feature.)

Convenience Methods for Opening Databases
=========================================

The solution for opening DBI databases has now been generalized, with
each adapter having its own convenience method, so you don't need to
use URI's anymore:

# open a memory SQLite database
DB = Sequel.sqlite

# open a regular SQLite database
DB = Sequel.sqlite('test.db')

# open a postgres database
DB = Sequel.postgres('mydb')

# open a postgres database with options
DB = Sequel.postgres('mydb', :user => 'myuser')

Bug Fixes and Miscellanea
=========================

* Added support for executing batch statements in the sqlite adapter.

* Changed #current_page_record_range to return 0..0 for an invalid
page.

* Aliased tables are now joined properly, e.g.: DB['stats
s'].join('player p', :id => :player_id)

* Improved Symbol#to_field_name to prevent false positives. Since
symbols are also used to signify SQL literals, this could help in some
cases where they were converted to dot notation by mistake.

=============================================

Sequel project page:
<http://code.google.com/p/ruby-sequel>

Sequel documentation:
<http://sequel.rubyforge.org>

Join the Sequel-talk group:
<http://groups.google.com/group/sequel-talk>

Install the gem:
sudo gem install sequel

Or check out the source and install manually:
svn co http://ruby-sequel.googlecode.com/svn/trunk sequel
cd sequel
rake install
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
474,266
Messages
2,571,318
Members
48,002
Latest member
EttaPfeffe

Latest Threads

Top