blob: 89ef768899cd4795ca7d7bf2f9cf081c7f7cc097 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
(ns mulk.benki.db
(:refer-clojure)
(:use mulk.benki.util)
(:require [clojure.java.jdbc :as sql]))
(def ^:private db
{:classname "org.postgresql.Driver"
:subprotocol "postgresql"
:subname "//localhost:5432/benki"
:user "benki"
:password ""})
(defn call-with-db [thunk]
(sql/with-connection db
(thunk)))
(defmacro with-db [& body]
`(call-with-db (fn [] ~@body)))
(defmacro with-dbt [& body]
`(call-with-db (fn [] (sql/transaction ~@body))))
(defmacro query [query-string & params]
`(sql/with-query-results results# ~(into [] (concat [query-string] params))
(into '() results#)))
|