2011-09-01 75 views

回答

5

只是想詳細說明@didierd的迴應。有一個會話/連接綁定到每個事務。您可以訪問當前會話,從而連接用類似的代碼:

Session.currentSession.connection 

或者,如果你不知道,如果你是一個交易

Session.currentSessionOption map {_.connection} 

內如果回滾以這種方式進行交易,您將有責任啓動一個新的連接,或確保連接不再使用,因此請謹慎使用。

1

您必須將JDBC的java.sql.Connection(在Sessionconnection),所以如果你真的不能使用transaction/inTransaction,你可以調用回滾有一個訪問。

通過訪問連接,您也可以執行任意SQL請求並更改數據庫模式,但要注意您的使用squeryl的代碼具有靜態編譯時間已知模式。