在MySQL中使用哪种正确的文本数据类型?

有VARCHAR,CHAR,TEXT,BIGTEXT,BLOB …

存储小文本字段(例如,诸如first_name之类的东西)时,哪种数据类型才是正确的?

解决方法:

“正确”是一个很强的词,但是大多数人可能会使用VARCHAR. CHAR也是一种选择,但是根据我的经验,它并不那么常用. This page解释了差异.

在最新版本的MySQL中,CHAR和VARCHAR之间的显着区别之一是CHAR无法存储尾随空格(因为该列会自动用空格填充到其最大长度).因此,如果您存储类似“ abc”的内容,它将被检索为“ abc”.对于大多数应用程序,这可能并不重要,但要记住这一点.类似地,在5.03之前,插入前从VARCHAR字段中删除尾随空格.因此,如果您需要存储任意字节的值并且不想担心MySQL版本之间的不同行为,则应使用BLOB类型之一.

上一篇:为什么PHP的MySQL驱动程序不转换数据类型?


下一篇:PHP和Jquery的json