问题描述
RDBMS varchar
(或类似的)之间的区别是-通常以最大长度来指定,并且在性能或存储方面可能更有效-和text
(或类似)类型-这些通常仅受硬编码实现限制(而不是数据库架构)。
Postgresql 9特别指出“这三种类型之间没有性能差异”,但是AFAIK在MysqL等方面存在一些差异,因此请记住这一点。
一个好的经验法则是,CharField
在需要限制最大长度时使用,TextField
否则。
这也不是真的特定于Django。
解决方法
CharField()
和TextField()Django
有什么区别?该文档说CharField()
应该用于较小的字符串,TextField()
而应用于较大的字符串。好的,但是“小”和“大”之间的界线在哪里?这到底是怎么回事?