gpt4 book ai didi

django - Django 有 SmallIntegerField 的原因是什么?

转载 作者:行者123 更新时间:2023-11-28 19:36:36 25 4
gpt4 key购买 nike

我想知道为什么提供它。该字段依赖于数据库,这不会使其使用起来完全不可靠吗?

我想在模型中存储出生年份,有点像

class Person(models.Model):
name = models.CharField(max_length=256)
born = models.IntegerField()

当然这需要非常小的空间,它应该总是 4 个“字符”长,所以 PositiveSmallIntegerField 可能适合,但我为什么要选择它而不是普通的 IntegerField?

最佳答案

许多 RDBM 的性能在很大程度上取决于行大小。虽然“纯粹”的方法可能会说应用程序应该完全独立于底层数据结构,但在许多行上的改进(例如使用更小的整数)可以将表大小减少 GB,从而使更多的表适合内存,从而大大提高性能。

我会使用像这样的小整数,比如表中的主键总是<100行,尤其是当它作为外键存储在表中时,我预计会变得非常大。虽然大小是实现定义的,但可以安全地假设它至少大于 127。

关于django - Django 有 SmallIntegerField 的原因是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1516610/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com