我試圖在Slick中針對視圖運行SELECT *
式樣的查詢。理想情況下,我最終會得到一個函數,您可以傳遞一組列名作爲Seq[String]
,它將執行查詢SELECT col1, col2, ... FROM view
。如果這不可行,那麼只需返回所有列即可(SELECT * FROM view
)。在Slick中選擇許多任意列
我知道我可以通過爲這個視圖定義一個Table
類以及一個伴隨的case類,但其中一些視圖有數百個列(這將需要嵌套元組,因爲有22個元素限制元組),並且有許多視圖我必須這樣做,所以這是很多代碼來編寫/生成/維護。我想盡可能避免這種情況。
這是可以在Slick?通過定義一個Table
類而不必在靜態代碼中定義列(使用動態列字符串列表初始化某個類將是可接受的),或者通過僅使用sql"""..."""
自己生成SQL查詢並以某種方式獲取.as[...]
來處理返回一組列任意長度?
我不需要對實際的列類型做任何特殊的處理:在數據庫端我們已經有了一些類型的混合,但是如果它們都被當作文本列在Slick端上我都可以。
有趣的問題,就像一個筆記,列的限制,現在刪除更新版本的浮油。 – 2014-09-20 06:53:53
要追蹤@ EndeNeu的評論,請參閱http://slick.typesafe.com/doc/2.1.0/userdefined.html#using-custom-record-types-in-queries。 – 2014-09-20 20:50:51