MySQL的数据类型有哪些?

MySQL支持多种数据类型,主要分为三类:数值、日期/时间和字符串。
数值类型主要包括:

  1. INT:整数类型,占用4个字节,范围为-2147483648~2147483647。
    例如:INT age = 25;
  2. DOUBLE:双精度浮点数,占用8个字节,范围为2.2250738585072014e-308到1.7976931348623157e+308。
    例如:DOUBLE price = 29.95;
  3. DECIMAL:定点数,可以设置精度和小数位数,是财务计算的首选类型。
    例如:DECIMAL(10,2) amount = 29.95; #总共10位,其中2位为小数

日期时间类型主要包括:

  1. DATE:只包含日期,格式为YYYY-MM-DD,占用3个字节。
    例如:DATE start_date = ‘2020-01-01’;
  2. TIME:只包含时间,格式为HH:MM:SS,占用3个字节。
    例如:TIME start_time = ’12:00:00′;
  3. DATETIME:包含日期和时间,格式为YYYY-MM-DD HH:MM:SS,占用8个字节。
    例如:DATETIME create_time = ‘2020-01-01 12:00:00’;

字符串类型主要包括:

  1. CHAR:定长字符串,可以指定长度,长度固定,占用0-255个字节。
    例如:CHAR(10) name = ‘Mark’; #固定长度为10
  2. VARCHAR:变长字符串,长度可变,最大长度65535个字符,占用1到3个字节。
    例如:VARCHAR email = ‘mark@example.com’;
  3. TEXT:长文本数据,最大长度65535个字符,占用3个字节。
    例如:TEXT product_desc = ‘Apple iPhone 11 Pro…’