我正在尝试在Slick 3.1中运行包含两个更新的事务。第二个更新是使用Slick sqlu
命令的纯SQL。这是我的尝试:
val table = TableQuery[TableDB]
val update1 = table.filter(f => f.name === name).update(rec)
val update2 = sqlu"UPDATE table2 SET field = 1 WHERE field = 2"
val action = (for {
_ <- update1
_ <- update2 // <-- compilation error here
} yield ()).transactionally
val future = db.run(action.asTry)
// ... rest of the code
Slick在update2
行中抱怨以下消息
发现隐式转换:⇒ augmentString():scala.collection.immutable.StringOps
类型不匹配;发现:scala.collection.immutable.IndexedSeq [单位] required:slick.dbio.DBIOAction [?,?,?]
是否可以在单个数据库事务中完成此工作?