Room 中 2 dao 的交易是真实的?
Transaction for 2 dao in Room is real?
在 Room
中有 2 个 tables/Dao - PoolDao 和 AccountDao 具有一对多关系(一个池多个帐户)。我需要先创建和保存池,然后再创建和保存(一个或多个)帐户。
如何在room中创建使用两个Dao操作的事务?
在文档中我发现只有一个 dao 的交易 -
https://developer.android.com/reference/android/arch/persistence/room/Transaction
您可以使用 appDatabase 对象的 runInTransaction 选项:
appDatabase.runInTransaction
{
appDatabase.dao1.doWhatNeedsToBeDone()
appDatabase.dao2.doWhatNeedsToBeDone()
}
你有例子here。
在 Room
中有 2 个 tables/Dao - PoolDao 和 AccountDao 具有一对多关系(一个池多个帐户)。我需要先创建和保存池,然后再创建和保存(一个或多个)帐户。
如何在room中创建使用两个Dao操作的事务? 在文档中我发现只有一个 dao 的交易 - https://developer.android.com/reference/android/arch/persistence/room/Transaction
您可以使用 appDatabase 对象的 runInTransaction 选项:
appDatabase.runInTransaction
{
appDatabase.dao1.doWhatNeedsToBeDone()
appDatabase.dao2.doWhatNeedsToBeDone()
}
你有例子here。