char vs varchar
char和varchar是常用的角色数据类型数据库看起来相似的系统在存储要求方面之间存在差异。在数据库设计中,有很多数据类型。在其中,角色数据类型与数字相比用于存储大量信息时,角色数据类型变得更加突出。字符数据类型用于在字符串中存储字符或字母数字数据。创建数据库时,定义了数据库字符集的类型。同样,在这些角色数据类型中,char和varchar是常用的数据类型。本文解释了这两种数据类型CHAR和VARCHAR是什么以及它们之间的差异。
什么是char?
The ISO definition of char is a特点炭数据类型是曾经存储角色。char(n)可以存储n个固定大小的字符。字符(n)可以保留的最大字符数为255个字符,弦长必须为1到8000。char。char使用静态记忆存储数据时分配。当我们想存储具有已知固定长度的字符串时,最好使用char。例如,当存储“是”和“否”为“ y”和“ n”时,我们可以使用数据类型char。而且,当将一个人的国家身份证编号存储为十个字符时,我们可以将数据类型用作char(10)。
什么是varchar?
顾名思义,Varchar称为可变字符。VARCHAR用于存储具有可变长度的字母数字数据。该数据类型可以保留的最大字符数为4000个字符,最大存储大小为2 GB。VARCHAR的存储大小是数据的实际长度加两个bytes。Varchar是低于char和它使用动态记忆存储数据时分配。We can use varchar when storing data such as names, addresses, descriptions, etc. Not only strings, but also non-string types such as date types, “March 12th 2015”, ”12/03/2015” also can be stored in the varchar data type.
Char和Varchar有什么区别?
•尽管char和varchar是字符数据字段,但char是固定长度数据字段,varchar是一个可变大小数据字段。
•char只能存储固定尺寸的非单数字符串字符字符,但是Varchar可以存储可变大小的字符串。
•CHAR对于经常更改的数据比VARCHAR更好。这是因为固定长度的数据行不容易碎裂。
•char仅占据声明变量时定义的固定空间。但是varchar将根据插入的数据占据空间,并且它将占据1或2个字节作为长度前缀。
• If the data is less than 255 chars, 1 byte is allocated and if data is more than 255 chars 2 bytes are reserved. If we use a char to store a flag of ‘Y’ and ‘N’ it will use one byte to store, but when we use varchar it will take two bytes to store the flag including an extra byte as the length prefix.
概括:
char vs varchar
char和varchar是数据库中最常用的字符数据类型。char用于存储具有固定长度的字符串,而VARCHAR用于存储具有不同长度的字符串。为了从数据中获得更好的性能,为数据库中表的字段选择正确的数据类型更重要。使用可以正确存储数据的最小数据类型更方便,因为它们从内存中占据更少的空间。
图像提供:Varcharvia Wikicommons (Public Domain)
发表评论