почему префикс префикса базы данных H2 перед моим значением - PullRequest
0 голосов
/ 19 апреля 2019

У меня есть таблица в базе данных H2.
В этой таблице есть 2 столбца, как показано ниже:

CREATE TABLE mytable (id bigserial NOT NULL,lffo_file text);

id | value --------------

Я выполняю этот запрос:

 INSERT INTO mytable (value , id) VALUES ( '/resource/public/1555687199892.js','1555684557909')

После этого при выполненииэтот запрос:

select * from my table

Он показывает мне:

id              |      value
-----------------------------------------
1555684557909   |  clob4: '/resource/public/1555687199892.js'

Почему H2 добавляет этот префикс << clob4: >>?

(я просто знаю, clobтип данных для огромного varchar)

1 Ответ

0 голосов
/ 20 апреля 2019

через некоторое время

База данных H2 автоматически рассматривает текст как тип данных clob
, и при создании таблицы со столбцом Text она была изменена на clob

изатем:
при вставке текстового значения сохраняется текст, подобный формату KVP:
предположим, что вы вставили 'Alex', а затем 'Beti' в столбец значений

, поэтому оно сохраняется какниже:

value clob0 : 'Alex' clob1 : 'Beti'

, как вы видите в kvp, ключ 'clobe' + counter

, поэтому я изменил тип текста на varchar(без размера) и зависит от документации на postgresql, между varchar и производительностью текста нет разницы

все это то, что я видел, и если есть лучший ответ, пожалуйста, поделитесь им, спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...