gpt4 book ai didi

scala - 使用 anorm 创建动态 SQL

转载 作者:行者123 更新时间:2023-12-05 01:27:18 27 4
gpt4 key购买 nike

我不想删除并重新插入每一行,所以我使用以下方法尝试将多行与异常一起使用:

SQL("""
delete from PERSON_ROLES
WHERE person_id = {userId}
and role_id not in ({rolescommastring})
)
""").on('userId -> userId,
'rolescommastring -> rolescommastring).execute()

上面产生了一个它不喜欢的字符串,我得到:

c.j.b.PreparedStatementHandle - delete from PERSON_ROLES
WHERE person_id = 1460
and
role_id not in ( '1, 3, 8, 9' )

我可以使用异常创建动态 sql 吗?

最佳答案

从Anorm 2.3开始,支持多值参数。

SQL("""
delete from PERSON_ROLES
WHERE person_id = {userId}
and role_id not in ({rolescommastring})
)
""").on('userId -> userId,
'rolescommastring -> Seq("id1", "id2", "id3")).execute()

https://www.playframework.com/documentation/2.3.x/ScalaAnorm 有更多类似的例子

关于scala - 使用 anorm 创建动态 SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26342137/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com