2014-05-02 14 views
23

Có cách nào để quan sát câu lệnh SQL sẽ được tạo bởi Query không?
Ví dụ: Tôi có điều này:
val q = actions.filter(v => v.actionHash === hash && v.carriedAt > past)
Tôi có thể xem SQL thô cơ bản của nó không?Xem truy vấn SQL trong Slick

Trả lời

33

Slick 2.X:

Bạn có thể in báo cáo kết quả truy vấn như hiển thị trên Slick documentation:

val invoker = q.invoker 
val statement = q.selectStatement 

Đối với loại khác báo cáo nhìn vào insertStatement, deleteStatementupdateStatement.

3.x Slick:

val res = table.filter(_.id === 1L).result 
res.statements.foreach(println) 

Docs.

10

Đối trơn 3,0

println(sortedQuery.result.statements.headOption) 
+0

trình cũng trên phiên bản Slick 3.1.1 – wlk