Path: | README.markdown |
Last Update: | Sat Dec 04 03:25:15 +0000 2010 |
# do_mysql
## Description
A MySQL driver for DataObjects.
## Features/Problems
This driver implements the DataObjects API for the MySQL relational database.
## Synopsis
An example of usage:
# default user (root, no password); default port (3306) DataObjects::Connection.new("mysql://host/database") # specified user, specified port DataObjects::Connection.new("mysql://user:pass@host:8888/database") @connection = DataObjects::Connection.new("mysql://localhost/employees") @reader = @connection.create_command('SELECT * FROM users').execute_reader @reader.next!
In the future, the `Connection` constructor will be able to be passed either a DataObjects-style URL or JDBC style URL, when using do_mysql on JRuby. However, this feature is not currently working reliably and is a known issue.
## Requirements
This driver is provided for the following platforms:
* Ruby MRI (1.8.6/7), 1.9: tested on Linux, Mac OS X and Windows platforms. * JRuby 1.3.1 + (1.4+ recommended). * Rubinius (experimental).
Additionally you should have the following prerequisites:
* `data_objects` gem * `do_jdbc` gem (shared library), if running on JRuby.
## Install
To install the gem:
gem install do_mysql
If installing the MRI/1.9/Rubinius extension on OS X and you install a version of MySQL that was built for only a single architecture, you will need to set `ARCHFLAGS` appropriately:
sudo env ARCHFLAGS="-arch i386" gem install do_mysql
To compile and install from source:
* Then, install this driver with `(jruby -S) rake install`.
For more information, see the MySQL driver wiki page: <wiki.github.com/datamapper/do/mysql>.
## Developers
Follow the above installation instructions. Additionally, you‘ll need:
* `bacon` gem for running specs. * `YARD` gem for generating documentation.
See the DataObjects wiki for more comprehensive information on installing and contributing to the JRuby-variant of this driver: <wiki.github.com/datamapper/do/jruby>.
To run specs:
rake spec
To run specs without compiling extensions first:
rake spec_no_compile
To run individual specs:
rake spec TEST=spec/connection_spec.rb
(Note that the `rake` task uses a `TEST` parameter, not `SPEC`. This is because the `Rake::TestTask` is used for executing the Bacon specs).
## License
This code is licensed under an **MIT (X11) License**. Please see the accompanying `LICENSE` file.