允许的文本字符串长度对性能和大小有什么影响



当我创建数据库表时(在我的情况下,它通常是arcgis地理数据库,但我希望所有数据库的问题都是一样的),我经常发现很难准确判断文本字段所需的长度,所以我高估了它(50或100)。这会显著影响数据库的性能和使用的磁盘空间吗?有没有特别有效的长度(比如8,16,32,64)?

或者我应该继续让我的数据库变得灵活?

字符串并不是真正的内存密集型字符串,每个字符通常只存在于2个字节中(支持每种语言),这也是为什么在对它们执行某些操作时应该使用较短的字符串而不是较长的字符串的唯一原因,因为字符串通常只是一个字符数组,对于较大的字符串,必须执行较大的操作。

所以一般来说,为一个字符串保留100个字符会产生200个字节,即0.2KB,而对于1000个字符串,这小于0.2MB,所以这应该不会有任何问题,除非你将所有内容都存储在256MB RAM的迷你计算机上的RAM中。

答:对大小的影响不是很大(逼真地看到),对性能的影响是中等的(以纳秒为单位),因为迭代每个字符,例如与一个长字符串中的另一个进行比较,可能会相对激烈,但在将数千个字符串与数千个其他字符串进行比较之前,无需担心

最新更新