我过去曾在Scala中使用Slick,但对Quill还是陌生的。有问题。 ;-)试图将Quill 3.1.0与Postgres一起用作目标数据库。
Quill似乎不直接支持upsert?也就是说,我做不到
quote {
query[MyClass].upsert(value)
}
似乎我应该将.insert与.onConflictUpdate一起使用?
如果我尝试更新标量类型的字段(如字符串或布尔值),那似乎行得通(或者至少是编译)。
但是我看不到如何对数组或列表类型的字段执行此操作?如果可能,在.onConflictUpdate子句中,我希望能够将新值附加到数组类型的列。但是我目前遇到类似
的编译时错误Tree 't.instances.:+[MyType, Any](e.instances.head) . (collection.this.IndexedSeq.canBuildFrom[MyType])' can't be parsed to 'Ast'
还是我应该以其他方式进行这种更新? (希望我不需要在读取和条件插入或更新周围包装事务。)