我想说我想执行以下查询: (从表中选择*) (从表中选择计数(*))
http://clojuredocs.org/clojure_contrib/clojure.contrib.sql/with-query-results
如何将所有这些放入矢量中以便打印出结果? 请提供具体的例子。
答案 0 :(得分:4)
不推荐使用clojure.contrib.sql
库,您链接到的文档已过时,因为该库的当前版本现在称为clojure.java.jdbc
。可以在此处找到该库的更新文档:
java.jdbc
documentation 要回答您的具体问题,您需要立即使用query
功能,并在社区维护网站上找到detailed documentation on running queries。你从query
得到的是一个完全实现的地图序列,它解决了我认为你遇到的问题(with-query-result
会返回一个懒惰的序列,所以如果你没有&#39} ; t在宏调用中完全实现它,你得到一个关于在封闭连接上运行的例外。)
query
函数可以通过:as-arrays?
,:row-fn
和:result-set-fn
以更灵活的方式处理结果集,这使得它比旧版更容易使用你提到的图书馆。