MySQL常用数据类型及其示例
MySQL是一种常用的关系型数据库管理系统,它支持多种数据类型,用于存储和处理不同类型的数据。本文将介绍MySQL中常用的数据类型,并提供相应的代码示例。
数据类型分类
MySQL中的数据类型可以分为数值型、日期和时间型、字符串型、二进制型和其他类型等。下面是常用数据类型的一些示例:
数值型:
数据类型 | 说明 |
---|---|
INT | 整数类型,用于存储整数数据 |
BIGINT | 大整数类型,用于存储更大范围的整数数据 |
FLOAT | 单精度浮点数类型,用于存储小数数据 |
DOUBLE | 双精度浮点数类型,用于存储更大范围的小数数据 |
日期和时间型:
数据类型 | 说明 |
---|---|
DATE | 日期类型,用于存储年、月、日数据 |
TIME | 时间类型,用于存储小时、分钟、秒数据 |
DATETIME | 日期时间类型,用于存储年、月、日、小时、分钟、秒数据 |
TIMESTAMP | 时间戳类型,用于存储时间戳数据 |
字符串型:
数据类型 | 说明 |
---|---|
CHAR | 字符串类型,定长字符串,长度固定 |
VARCHAR | 字符串类型,变长字符串,长度可变 |
TEXT | 文本类型,用于存储较长的字符串数据 |
ENUM | 枚举类型,用于存储预定义的字符串值 |
二进制型:
数据类型 | 说明 |
---|---|
BINARY | 二进制类型,存储定长的二进制数据 |
VARBINARY | 二进制类型,存储变长的二进制数据 |
BLOB | 二进制大对象类型,存储较长的二进制数据 |
其他类型:
数据类型 | 说明 |
---|---|
BOOLEAN | 布尔类型,用于存储真或假值 |
JSON | JSON类型,用于存储JSON格式的数据 |
AUTO_INCREMENT | 自增类型,用于自动生成唯一标识符 |
示例代码
下面是一些常见数据类型的示例代码:
-- 创建表,定义数据类型为整数
CREATE TABLE students (
id INT,
name VARCHAR(50)
);
-- 创建表,定义数据类型为日期
CREATE TABLE orders (
id INT,
order_date DATE
);
-- 创建表,定义数据类型为字符串
CREATE TABLE products (
id INT,
name VARCHAR(100),
description TEXT
);
-- 创建表,定义数据类型为布尔值
CREATE TABLE users (
id INT,
username VARCHAR(50),
is_admin BOOLEAN
);
以上代码演示了如何使用不同的数据类型在MySQL中创建表。
类图
下面是一个使用mermaid语法绘制的MySQL数据类型类图:
classDiagram
class Number {
-value: Number
}
class Integer {
-value: Integer
}
class BigInt {
-value: BigInt
}
class Float {
-value: Float
}
class Double {
-value: Double
}
class DateTime {
-value: DateTime
}
class Date {
-value: Date
}
class Time {
-value: Time
}
class String {
-value: String
}
class Char {
-value: Char
}
class Varchar {
-value: Varchar
}
class Text {
-value: Text
}
class Enum {
-value: Enum
}
class Binary {
-value: Binary
}
class Varbinary {
-value: Varbinary
}
class Blob {
-value: Blob
}
class Boolean {
-value: Boolean
}
class JSON {
-value: JSON
}
class AutoIncrement {
-value: AutoIncrement
}
Number <|-- Integer
Number <|-- BigInt
Number <|-- Float
Number <|-- Double
DateTime <-- Date
DateTime <-- Time
DateTime <|-- Timestamp
String <|-- Char
String <|--