哪种 HSQLDB 数据类型最适合 5000 个字符串:NTEXT、CLOB 或其他。?
Posted
技术标签:
【中文标题】哪种 HSQLDB 数据类型最适合 5000 个字符串:NTEXT、CLOB 或其他。?【英文标题】:Which HSQLDB Data Type is Optimal for 5000 Character String: NTEXT, CLOB or Other.? 【发布时间】:2020-08-01 08:22:50 【问题描述】:我需要在我的数据库中存储长度在 1 到 4200 个字符之间的消息。 我应该使用“...NAMEHERE CLOB(5000) NOT NULL, ...”还是“...NAMEHERE NTEXT NOT NULL”创建列,还是其他最佳方法?
【问题讨论】:
【参考方案1】:它适用于 VARCHAR(5000) 和 CLOB(5000)。性能取决于数据库和表的类型。如果您的数据库都在内存中mem:
,请使用 VARCHAR(5000)。对于file:
databases CLOB(5000) 使用的内存更少,应该在大型数据库中表现更好。
不同之处在于存储此列数据的文件。使用 VARCHAR(5000) 它与其他列一起存储。对于 CLOB(5000),它存储在单独的 .lobs
文件中。
如果使用 CLOB,请将 LOB SCALE 更改为 SET FILES LOB SCALE 2
,以 2 KB 为单位分配文件空间,减少浪费。
【讨论】:
varchar 对于 hsql 的限制在 230 和 240 左右。我最终按原样使用 CLOB(5000),它工作得很好。还是谢谢 HSQLDB 中的 VARCHAR 没有这样的限制。 事实证明你是对的。这里说 nvarchar(max) 的最大值是 230 但我想这意味着别的东西:tutorialspoint.com/hsqldb/hsqldb_data_types.htm 谢谢... 链接页面使用了有关用于 HSQLDB 的 Microsoft SQL Server 的信息。使用 (hsqldb.org/doc/2.0/guide/…) HyperSQ 指南。以上是关于哪种 HSQLDB 数据类型最适合 5000 个字符串:NTEXT、CLOB 或其他。?的主要内容,如果未能解决你的问题,请参考以下文章
哪种 .NET 数据类型最适合在 NHibernate 中映射 NUMBER Oracle 数据类型?