aboutsummaryrefslogtreecommitdiff
path: root/src/clojure/contrib/sql
diff options
context:
space:
mode:
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"
[]