sql >> データベース >  >> RDS >> PostgreSQL

clojure.java.jdbcレイジークエリ

    まず、https://jdbc.postgresql.org/documentation/83/query.html#query-with-cursorを参照してください。

    このように解決しました。

    (jdbc/with-db-transaction [tx connection]
      (jdbc/query tx
        [(jdbc/prepare-statement (:connection tx)
                                  "select * from mytable"
                                  {:fetch-size 10})]
         {:result-set-fn (fn [result-set] ...)}))
    

    ここで、:result-set-fn 怠惰な結果セットを消費する関数です。

    with-db-transaction autoCommitを処理します falseに設定 。:fetch-size queryから渡されません したがって、prepare-statementを作成する必要があります 自分で。



    1. MySQLでvarcharフィールドを数値で並べ替える

    2. Postgresで日時をUNIXエポック値に変換するにはどうすればよいですか?

    3. Oracle Fast Recovery Area

    4. 一意性の制約を処理するためにSQLiteUPDATEでORDERBYをシミュレートします