aboutsummaryrefslogtreecommitdiff
path: root/src/clojure/contrib/sql
diff options
context:
space:
mode:
authorscgilardi <scgilardi@gmail.com>2009-01-14 22:06:41 +0000
committerscgilardi <scgilardi@gmail.com>2009-01-14 22:06:41 +0000
commit72cd5557d2159525358a08ca97eb0fea4ec3d3b4 (patch)
tree292f60f330bcd630fb1741da6b8ad15956e989bb /src/clojure/contrib/sql
parentad57c362a7c702703a80bbbde43b53316d3791a7 (diff)
sql: add update-or-insert-values & test for it, refine doc strings, remove unnecessary uses of apply
Diffstat (limited to 'src/clojure/contrib/sql')
-rw-r--r--src/clojure/contrib/sql/test.clj12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/clojure/contrib/sql/test.clj b/src/clojure/contrib/sql/test.clj
index 660d87e2..134bc862 100644
--- a/src/clojure/contrib/sql/test.clj
+++ b/src/clojure/contrib/sql/test.clj
@@ -26,7 +26,7 @@
[]
(sql/create-table
:fruit
- [:name "varchar(32)" "NOT NULL" "PRIMARY KEY"]
+ [:name "varchar(32)" "PRIMARY KEY"]
[:appearance "varchar(32)"]
[:cost :int]
[:grade :real]))
@@ -98,6 +98,16 @@
(db-update-appearance-cost "Feijoa" "green" 400)))
nil)
+(defn db-update-or-insert
+ "Updates or inserts a fruit"
+ [record]
+ (sql/with-connection
+ db
+ (sql/update-or-insert-values
+ :fruit
+ ["name=?" (:name record)]
+ record)))
+
(defn db-read-all
"Return all the rows of the fruit table as a vector"
[]