ปรับปรุง jsonb ค่าใน PostgreSQL ใช้ JOOQ

0

คำถาม

ในของฉันจาวางโครงการฉัน usinq JOOQ และฉันต้องการปรับปรุง JSONB ค่า. แต่ฉันสร้างความล้มเหลว

ฉันเขียนรหัส:

DSL.using(connection).update(USER_SETTINGS)
                .set(USER_SETTINGS.SETTING_VALUE, field("{\"filtersValue\":{\"page\":0,\"size\":100}, \"visibleCount\":100}", JSONB.class))
                .where(USER_SETTINGS.USER_ID.eq(98383L))
                .execute();

enter image description here

และฉันได้ยังจดหมายฉบับถัดไป:

org.jooq.exception.DataAccessException: 
SQL [update "sbcm_sys"."user_settings" set "setting_value" = "filtersValue":{"page":0,"size":100, "visibleCount":100} where "sbcm_sys"."user_settings"."user_id" = ?]; ERROR: syntax err
or at or near ":"
  Position: 71
Caused by: org.postgresql.util.PSQLException: 
ERROR: syntax error at or near ":"
  Position: 71

อยู่ไหนฉันทำผิดพลาด?

java jooq jsonb postgresql
2021-11-22 08:59:51
1

คำตอบที่ดีที่สุด

1

คุณกำลังใช้ DSL.field(String)ซึ่งก็คือใช้สำหรับ ธรรมดาภาษา sql templatingตอนที่คุณหมายถึงต้องใช้ DSL.val(String)ซึ่งก็คือใช้สำหรับ ให้พวกค่า.

เห็นแล้วก็นี่ด้วยบล็อกของโพสต์สำหรับกา clarifications: https://blog.jooq.org/whats-a-string-in-the-jooq-api/

2021-11-22 10:29:00

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่