我想为网站管理员制作一个简单的通知/新闻系统。
将这些消息(最多 250 个字符)存储在数据库中的最佳解决方案是什么?
VARCHAR(255) 还是文本?
谢谢
如果文本/消息永远不会超过 250 个字符,VARCHAR2(255)
则更建议使用。但是,如果在以后的日期/时间,您可能会增加它,您可以稍后再做。:)
如果它们要短,请定义一个硬上限并使用 VARCHAR()。如果您认为它们不会超过 250 个字符,请调整大小VARCHAR(512)
,让自己有足够的空间在瞬间改变主意。(无论如何,您总是可以稍后更改列定义)。
TEXT
和BLOB
类型确实适用于未知/未确定/无限长度的数据。如果定义限制没有问题,则定义一个并使用VARCHAR()
. 您将从 中的排序和索引中获得更大的灵活性VARCHAR()
,因为TEXT
只能使用最多max_sort_length
字节进行排序。
如果它对您的用例很重要,则不能为TEXT
列分配默认值。
MySQL 文档中详细介绍了BLOB
& TEXT
types中的大部分内容。