【发布时间】:2017-07-18 10:37:51
【问题描述】:
【问题讨论】:
-
并非总是需要 VarChar 才能达到 255。例如,密码的 varchar 是 6 位,我会将其设置为 6,因此如果用户尝试解析到我的数据库,它将引发错误。
-
所以只有设置为255时,如果超过该限制,它会被转换为TEXT;否则抛出错误?
-
这种错误信息是我们建议避免 w3fools的原因。 (问题不仅仅是错误信息。真正的问题是 w3fools 顽固地拒绝纠正这种错误陈述。)VARCHAR( n) 在 n>255 时转换为 TEXT。 (该语句对于 MySQL 5.1、5.6 和 5.7 来说是 FALSE。如果它曾经是真的(?)那将是对于一个非常旧的 MySQL 版本。) VARCHAR 和 TEXT 之间存在一些显着差异。还有一些你会使用其中一个的充分理由。超过 255 个字符不是一个很好的理由。