1)我有一个luminus应用程序。我想在单个数据库连接中执行多个数据库请求,这意味着无需再次打开连接。 现在我有了这个:
(defn page1 [id]
(layout/render "page1.html"
(my-var1 (db/get-single-article {:id (Integer/parseInt id)}))))
我想在执行db / get-single-article的同一数据库连接中执行其他内容,比如db / get-something-else。怎么样?
2)在resources / sql / queries.sql中我有这个:
-- :name get-single-article :? :1
-- :doc retrieve an article given the id.
SELECT * FROM article
WHERE id = :id
如何向此添加一个查询,以便它在db / get-single-article调用中执行并返回不同的结果集?像这样:
-- :name get-single-article :? :1
-- :doc retrieve an article given the id.
SELECT * FROM article
WHERE id = :id
select * from another_table
where ...
如何在调用db / get-single-article时导航它们?
答案 0 :(得分:1)
继续并在SQL文件中定义第二个查询:
-- :name get-something-else :? :*
select * from another_table where ...
然后为这两个查询分配查询结果:
(defn page1 [id]
(layout/render "page1.html"
{:my-var1 (db/get-single-article {:id (Integer/parseInt id)})
:my-var2 (db/get-something-else)}))