Refactor to sql-format for now
This commit is contained in:
parent
2c98d35f63
commit
b6d6d2c4f4
2 changed files with 20 additions and 16 deletions
|
|
@ -227,15 +227,19 @@
|
|||
:else
|
||||
["?" x]))
|
||||
|
||||
(defn- sql-format
|
||||
"Format the data into SQL + params according to the options."
|
||||
[data opts]
|
||||
(let [dialect (get dialects (get opts :dialect :ansi))]
|
||||
(binding [*dialect* dialect
|
||||
*quoted* (if (contains? opts :quoted) (:quoted opts) true)]
|
||||
(format-dsl data))))
|
||||
|
||||
(defn format
|
||||
"Turn the data DSL into a vector containing a SQL string followed by
|
||||
any parameter values that were encountered in the DSL structure."
|
||||
([data] (format data {}))
|
||||
([data opts]
|
||||
(let [dialect (get dialects (get opts :dialect :ansi))]
|
||||
(binding [*dialect* dialect
|
||||
*quoted* (if (contains? opts :quoted) (:quoted opts) true)]
|
||||
(format-dsl data)))))
|
||||
([data] (sql-format data {}))
|
||||
([data opts] (sql-format data opts)))
|
||||
|
||||
(defn set-dialect!
|
||||
"Set the default dialect for formatting.
|
||||
|
|
@ -254,13 +258,13 @@
|
|||
(format-expr 1)
|
||||
(format-where :where [:= :id 1])
|
||||
(format-dsl {:select [:*] :from [:table] :where [:= :id 1]})
|
||||
(format {:select [:t.*] :from [[:table :t]] :where [:= :id 1]})
|
||||
(format {:select [:*] :from [:table] :group-by [:foo :bar]})
|
||||
(format {:select [:*] :from [:table] :group-by [[:date :bar]]})
|
||||
(format {:select [:*] :from [:table] :order-by [[:foo :desc] :bar]})
|
||||
(format {:select [:*] :from [:table] :order-by [[[:date :expiry] :desc] :bar]})
|
||||
(format {:select [:*] :from [:table] :where [:< [:date_add :expiry [:interval 30 :days]] [:now]]})
|
||||
(sql-format {:select [:t.*] :from [[:table :t]] :where [:= :id 1]} {})
|
||||
(sql-format {:select [:*] :from [:table] :group-by [:foo :bar]} {})
|
||||
(sql-format {:select [:*] :from [:table] :group-by [[:date :bar]]} {})
|
||||
(sql-format {:select [:*] :from [:table] :order-by [[:foo :desc] :bar]} {})
|
||||
(sql-format {:select [:*] :from [:table] :order-by [[[:date :expiry] :desc] :bar]} {})
|
||||
(sql-format {:select [:*] :from [:table] :where [:< [:date_add :expiry [:interval 30 :days]] [:now]]} {})
|
||||
(format-expr [:interval 30 :days])
|
||||
(format {:select [:*] :from [:table] :where [:= :id 1]} {:dialect :mysql})
|
||||
(format {:select [:*] :from [:table] :where [:in :id [1 2 3 4]]})
|
||||
(sql-format {:select [:*] :from [:table] :where [:= :id 1]} {:dialect :mysql})
|
||||
(sql-format {:select [:*] :from [:table] :where [:in :id [1 2 3 4]]} {})
|
||||
,)
|
||||
|
|
|
|||
|
|
@ -7,5 +7,5 @@
|
|||
|
||||
(deftest mysql-tests
|
||||
(is (= ["SELECT * FROM `table` WHERE `id` = ?" 1]
|
||||
(sut/format {:select [:*] :from [:table] :where [:= :id 1]}
|
||||
{:dialect :mysql}))))
|
||||
(#'sut/sql-format {:select [:*] :from [:table] :where [:= :id 1]}
|
||||
{:dialect :mysql}))))
|
||||
|
|
|
|||
Loading…
Reference in a new issue