gpt4 book ai didi

jdbc - 无法理解 clojure 中的 SQLException 异常

转载 作者:行者123 更新时间:2023-12-04 05:50:44 24 4
gpt4 key购买 nike

我创建了一些 clojure 函数来访问数据库,如下面的代码片段所示:

(defn get-dg [date]
(let [query (str "......")
]
(jdbc/with-connection db
(jdbc/with-query-results rows
[query date date date date]
(.debug log rows)
(if (not (seq rows))
nil
rows))))
)

一切正常。该查询返回一个结果集,然后我可以对其进行处理。现在,如果我注释掉(.debug 日志行),我会得到这个:
java.lang.RuntimeException: java.sql.SQLException: Closed Resultset: next

知道为什么吗?

谢谢

最佳答案

“行”是懒惰的。似乎“(.debug log rows)”评估了“行”。只需明确地做到这一点:

(defn get-dg [date]
(let [query (str "......") ]
(jdbc/with-connection db
(jdbc/with-query-results rows [query date date date date]
(comment .debug log rows)
(if (empty? rows) nil (doall rows))))))

关于jdbc - 无法理解 clojure 中的 SQLException 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10084501/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com