我在 Hibernate 中使用 JPA,需要在数据库中存储较小的 XML 数据(最多 500 个字符)。
我不需要查询 XML 数据,也就是说,XML 数据永远不会成为WHERE
子句的一部分。
我应该为此使用什么数据类型?
我在 Hibernate 中使用 JPA,需要在数据库中存储较小的 XML 数据(最多 500 个字符)。
我不需要查询 XML 数据,也就是说,XML 数据永远不会成为WHERE
子句的一部分。
我应该为此使用什么数据类型?
我认为没有理由在这里使用 LOB,因为 500 是您的最大长度。一种选择是简单地将字符串映射到列并在外部解析 XML 类型。
另一种选择是使用休眠特定的注释来映射外部类型 - http://docs.jboss.org/hibernate/annotations/3.5/reference/en/html_single/#d0e2794
XML 是一种基于文本的格式,将其存储在数据库中并不是一个坏习惯,Microsoft SQL Server 甚至有 XML 数据类型。因此,如果您使用的是 Microsoft SQL Server,则可以使用它。请从 msdn 的以下链接中找到更多信息:
http://msdn.microsoft.com/en-us/library/hh403385.aspx
对于其他数据库,最好将其以文本格式存储在 varchar 或 nvarchar 中,因为将来如果您想查询数据库并处理 XML,它将非常方便。