gpt4 book ai didi

postgresql - 通过 Scala Anorm(在 Play Framework 中)将数据插入 PostgreSQL jsonb 列

转载 作者:行者123 更新时间:2023-11-29 11:47:48 26 4
gpt4 key购买 nike

PostgreSQL 表my_tabledata 列的格式为jsonb。我想插入一个 Scala JsObject(或 JsValue),但不知道该怎么做!

以下代码无法编译,因为 on 函数要求 jsonString:

  def add(json: JsObject): Option[Long] = {
DB.withConnection {
implicit c =>

val query = """
insert into my_table(data)
values({data});"""

SQL(query).on(
"data" -> json
).executeInsert()
}
}

解决方案是什么?

最佳答案

在值的末尾使用 ::jsonb 标签。例如。

//my scala variables

val jsonDescription: String = "{\"name\":\"ksulr\"}"
val age = 15

//my insert statement
val sql = "INSERT into person(json_description,age) VALUES(?::jsonb,?)"

//prepared statement
val statement = conn.prepareStatement(sql)

//insert values into the sql statement
statement.setString(1,jsonDescription)
statement.setInt(2,age)

statement.executeUpdate()

这会起作用。它对我有用。这就是我插入 jsonb 类型的 postgres db 列的方式。

关于postgresql - 通过 Scala Anorm(在 Play Framework 中)将数据插入 PostgreSQL jsonb 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28062503/

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