тем, что jsonb колонки не инсертятся, возникают ошибки серии is of type jsonb but expression is of type character varying
в доках джука сказано, что он нейтив с жсон и жсонб типами, но при этом нахожу статьи про кастомные дата биндинги.
подскажите, пожалуйста, правильно я понимаю, что для корректной работы с жсонб без какого-либо изменения структуры бд и джава классов, нужно пилить дата биндинг кастомный?
ps: перевод в жсон строку не работает
покажи как инсертишь - через dslContext при момощи билдера или через дао, скармливая pojo?
пожо в рекорд, рекорд в dslContext.insertInto(PROFILE_).set(profileRecord).returningResult(PROFILE_.ID).fetch()
а как сетишь поле jsonb? там же Object по факту? Но не каждый object подойдет. делал давно, но вижу у себя такой подход: через native query вида dslContext.fetch("update some_table set some_field = ?::jsonb", object); где object = objectMapper.writeValueAsString(pojo);
если делать через подготовленный pojo, record, то скорее всего так же - через jackson objectMapper
апдейт да, так скорее всего сработает, но чтобы сделать апдейт, надо сначала инсерт сделать))) но инсертить строку в два приёма как-то мне не нравится.
Обсуждают сегодня