1

考虑 MySQL 中的两种 String 类型

1.字符[长度]

2.Varchar[长度]

问题:对于 Varchar 或 Char 哪种类型,需要定义LENGTH字段?

根据我的观点,它是 Char,但在一个教程中写道,您必须为 Varchar 定义长度,而对 Char 类型没有这样的要求。

CHAR(M) - 长度在 1 到 255 个字符之间的固定长度字符串(例如

CHAR(5)),在存储时用空格填充到指定长度。定义长度

不是必需的,但默认值为 1。

VARCHAR(M) - 长度在 1 到 255 个字符之间的可变长度字符串;为了

例如 VARCHAR(25)。创建 VARCHAR 字段时必须定义长度。

链接:www.tutorialspoint.com/mysql/mysql-data-types.htm

教程中写的东西对吗?

4

1 回答 1

2

如果我清楚你在寻找什么。

看看这个。

CREATE TABLE mytable (column1 VARCHAR(20), column2 CHAR);

insert into mytable values('stackoverflow','v');
select * from mytable;

如果您不指定 char 数据类型的长度,则默认为 1。

现在,如果您尝试insert string in column2超过长度 1,它将引发错误。

摘要: Varchar 数据类型需要长度,否则在 char 数据类型中如果您未指定长度,则默认为 1 时会引发错误。

于 2012-07-05T05:05:42.800 回答