3
Silverstripe 3.3是否支持與MySQL的交易?如果是這樣,它可以與ORM一起使用嗎?如何在使用MySQL的Silverstripe 3.3中使用事務?
我找不到關於此主題的任何文檔。一個例子會非常好。
Silverstripe 3.3是否支持與MySQL的交易?如果是這樣,它可以與ORM一起使用嗎?如何在使用MySQL的Silverstripe 3.3中使用事務?
我找不到關於此主題的任何文檔。一個例子會非常好。
正如Shadow所說,你不應該擔心事務,因爲SilverStripe會在內部處理它們。
話雖這麼說,如果你需要明確地做一些事情,你可以做這樣的事情:
try {
DB::getConn()->transactionStart();
// do stuff...
DB::getConn()->transactionEnd();
} catch (Exception $e) {
DB::getConn()->transactionRollback();
}
見SS_Database
- API documentation here。
這個功能應該深埋在ORM中,應用程序應該很少打擾它。 ORM的重點在於隱藏ORM用戶的這些細節。在API文檔中快速搜索發現,mysql coonector類確實有start/end/rollback事務方法,所以silverstripe知道這個功能。 – Shadow