首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Quill onconflictupdate多值

Quill onconflictupdate多值
EN

Stack Overflow用户
提问于 2018-10-09 20:03:49
回答 1查看 785关注 0票数 1

在quill中有没有可能在冲突中更新多个值?例如:

代码语言:javascript
复制
val a = quote {
  query[Product]
    .insert(_.id -> 1, _.sku -> 10)
    .onConflictUpdate((t, e) => t.sku -> (t.sku + e.sku), t.abc -> e.abc)
}

我尝试了上面的方法,当我有两个值时,总是得到一个"not found: value t“错误。文档也不会回答这个方向的问题。

EN

回答 1

Stack Overflow用户

发布于 2018-12-21 03:31:28

可以,您可以在插入冲突时更新多个值。为此,只需提供多个带有映射的lambda,如下所示

代码语言:javascript
复制
val q = quote {
  query[Product]
    .insert(lift(product))
    .onConflictUpdate(
      (t, e) => t.sku -> (t.sku + e.sku),
      (t, e) => t.abc -> e.abc)
}

这将为MySQL生成以下SQL:

代码语言:javascript
复制
INSERT INTO product (id,sku,abc) VALUES (?, ?, ?) 
ON DUPLICATE KEY UPDATE sku = (sku + VALUES(sku)), abc = VALUES(abc)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52720646

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档