Mam pytanie o Slick 3 i TransakcjeSlick 3 Transakcje z logiką w Scala
Przeczytałem dokumentację
http://slick.typesafe.com/doc/3.1.0/dbio.html
a drugi Slick 3 transakcja podważenie
Executing non-database actions in a transaction in Slick 3
Ale one mi nie pomogły
Potrzebuję odczytać niektóre wartości z bazy danych, uruchomić trochę logiki w Scali, a następnie, w zależności od wyniku, zmodyfikować bazę danych. Chcę, żeby cała operacja była atomowa.
Mój kod wygląda mniej więcej tak:
database.run(TableQuery[X].filter(blah).result).map { x =>
database.run {
if(someLogicNotInSQL(x))
TableQuery[Y].insert(someFoo)
else
TableQuery[Y].insert(someBah)
}
}
Jak uzyskać wartość zapytania uruchomić jakąś logikę w Scala, a następnie uruchomić kolejną akcję (np insert) wszystko jako jedną transakcję atomowej.
Dzięki Peter