PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Cách phù hợp để làm việc với kết quả phát trực tuyến 3.0.0 của slick và Postgresql là gì?

"Cách đúng đắn" để phát trực tuyến với Slick và Postgres bao gồm ba điều:

  1. Phải sử dụng db.stream ()

  2. Phải tắt autoCommit trong trình điều khiển JDBC. Một cách là làm cho truy vấn chạy trong một giao dịch bằng cách thêm vào .transactionally .

  3. Phải đặt fetchSize là một cái gì đó khác 0, nếu không postgres sẽ đẩy toàn bộ resultSet đến máy khách trong một lần.

Ví dụ:

DB.stream(
  find(0L, 0L)
    .transactionally
    .withStatementParameters(fetchSize = 1000)
).foreach(println)

Các liên kết hữu ích:

https://github.com/slick/slick/issues/1038

https://github.com/slick/slick/issues/809



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để lập chỉ mục một cột mảng chuỗi cho truy vấn pg_trgm `'term'% ANY (array_column)`?

  2. Laravel 5 với Postgres SQL

  3. Hiểu biết của tôi về kích thước Unicorn, Sidekiq và DB Pool có đúng không?

  4. Sử dụng giá trị trả về từ DELETE cho UPDATE trong Postgres

  5. CASCADE XÓA chỉ một lần