A Clojure wrapper for JDBC-based access to databases.
Formerly known as clojure.contrib.sql.
Latest stable release: 0.2.2
Leiningen dependency information:
[org.clojure/java.jdbc "0.2.2"]
Maven dependency information:
<dependency>
<groupId>org.clojure</groupId>
<artifactId>java.jdbc</artifactId>
<version>0.2.2</version>
</dependency>
(require '[clojure.java.jdbc :as sql])
(def mysql-db {:subprotocol "mysql"
:subname "//127.0.0.1:3306/clojure_test"
:user "clojure_test"
:password "clojure_test"})
(sql/with-connection mysql-db
(sql/insert-records :fruit
{:name "Apple" :appearance "rosy" :cost 24}
{:name "Orange" :appearance "round" :cost 49}))
(sql/with-connection mysql-db
(sql/with-query-results rows
["SELECT * FROM fruit WHERE appearance = ?" "rosy"]
(:cost (first rows))))
For more detail see the generated documentation on github.
Testing:
To test against PostgreSQL, first create the user and database:
$ sudo -u postgres createuser clojure_test -P # password: clojure_test
$ sudo -u postgres createdb clojure_test -O clojure_test
Or similarly with MySQL:
$ mysql -u root
mysql> create database clojure_test;
mysql> grant all on clojure_test.* to clojure_test identified by "clojure_test";
Then run the tests with the TEST_DBS environment variable:
$ TEST_DBS=mysql,postgres mvn test
Release 0.0.1 on 2011-05-07
Changes from clojure.contrib.sql:
Copyright (c) Stephen Gilardi, Sean Corfield, 2011-2012. All rights reserved. The use and distribution terms for this software are covered by the Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php) which can be found in the file epl-v10.html at the root of this distribution. By using this software in any fashion, you are agreeing to be bound by the terms of this license. You must not remove this notice, or any other, from this software.