Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/datamapper/do

DataObjects
https://github.com/datamapper/do

Last synced: 3 months ago
JSON representation

DataObjects

Lists

README

        

DataObjects README
==================

DataObjects.rb is an attempt to rewrite existing Ruby database drivers to
conform to one, standard interface.

At present the following drivers are available:


Database Vendor
MRI (1.8.6/7) / 1.9
JRuby


MySQL
x
x

Oracle
x
x

PostgreSQL
x
x

SQLite3
x
x

Derby
-
x

H2
-
x

HSQLDB
-
x

SQL Server
pending
x

OpenEdge
-
x

There is experimental support for [Rubinius][rubinius].

More drivers are
currently under development. If you feel like living on the edge, install and
test drivers directly from this repository.

Introduction
------------

To connect to and query the database, DataObjects relies on native extensions.
Native extensions have been written in both C (for Ruby 1.8.6/7 (MRI), Ruby
1.9.x (YARV) and Rubinius platform) and Java (for the JRuby platform).
Individual drivers may include extensions for both Ruby MRI and JRuby, or one
or the other.

C extensions have been written using according to each vendor API. Java drivers
use the standard JDBC API. Although there are dialectical differences between
the Java drivers, the JDBC API ensures a reasonable amount of commonality. As
such, the Java extensions rely on a common do\_jdbc gem, which wraps code that
is common to all of the Java extensions.

Installation
------------

To install a driver from the repository `cd` into the driver directory and use
the provided `rake install` task to install for the default platform.

Copyright and Licensing
-----------------------

Please see the copyright notices in each individual driver README.markdown or
LICENSE file. Java-based drivers bundle JDBC driver JAR files, which may be
provided under a license that is more restrictive than the MIT License used by the
data\_objects gem itself.

[rubinius]:http://rubini.us/