2

在剧中!教程中,content模型Post的字段注释为@Lob。我试过这个,当postgres用作db时,发现表中Post有一个名为content的列,它有一个值133414而不是一个长字符串,这是帖子内容。列类型显示为'text'Entity 中的其他字符串字段所在的位置character varying

假设,我想搜索内容中包含某个单词的帖子,我将如何制定查询?我是否必须删除 @Lob 注释并让 postgres 将内容作为 varchar 存储在内容列中?

4

1 回答 1

1

@Lob 根据定义是一个大对象。这可以存储为二进制数据或字符数据。在 lobs/clob/blob 中搜索可能非常困难,并且在大多数情况下没有优化。我建议使用更传统的类型,例如 text、varchar。这些是可索引的,因此性能更高。(在大多数情况下),您可能还必须定义列大小。

您可以使用列注释来精确它们:

@Column(type = "TEXT")
于 2011-08-31T09:53:30.830 回答