我在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的数据类型)
过了一会儿
H2数据库自动将Text视为clob数据类型 当您使用文本列创建表时,它已更改为clob
然后: 当您插入文本值时,它会保留像KVP格式的文本: 假设您在值列中插入了'Alex'然后'Beti'
所以它坚持如下:
value
clob0 : 'Alex'
clob1 : 'Beti'
正如你在kvp中看到的那样,关键是'clobe'+ counter
所以我将文本类型更改为varchar(没有大小)并依赖于postgresql文档,varchar和文本性能之间没有区别
所有这一切都是我所看到的,如果有更好的答案请分享,谢谢