MySQL数据库可以指定的表字段的类型
MySQL创建表时字段的常见类型包括:
默认值(DEFAULT):在插入数据时,如果没有指定某个字段的值,则会使用默认值。默认值可以是常量、函数或表达式。例如,price DECIMAL(10,2) DEFAULT 0.00表示如果插入数据时未指定价格,则默认为0.00。
是否允许为空(NULL):字段是否可以存储NULL值。如果设置为NOT NULL,则该字段在插入数据时必须提供值。例如,name VARCHAR(100) NOT NULL表示姓名字段不能为空。
主键(PRIMARY KEY):用于唯一标识表中的每一行数据。主键字段的值必须是唯一的,且不能为NULL。例如,id INT AUTO_INCREMENT PRIMARY KEY表示ID字段是自增的主键。
自增(AUTO_INCREMENT):用于自动生成唯一的标识符。通常用于主键字段。例如,id INT AUTO_INCREMENT表示ID字段会自动递增。
唯一性约束(UNIQUE):确保字段的值在表中是唯一的。例如,email VARCHAR(100) UNIQUE表示电子邮件地址在表中必须是唯一的。
外键(FOREIGN KEY):用于建立表之间的关系,引用另一个表的主键。例如,FOREIGN KEY (department_id) REFERENCES departments(id)表示当前表中的department_id字段引用departments表的主键。
注释(COMMENT):为字段添加描述信息。例如,name VARCHAR(100) NOT NULL COMMENT '用户名’为姓名字段添加了描述信息。
长度控制:定义字段可以存储的最大长度。例如,VARCHAR(100)表示字符串字段最多可以存储100个字符。
浮点数类型:如FLOAT、DOUBLE、DECIMAL等,用于存储带有小数的数值。例如,price DECIMAL(10,2)表示价格最多有10位数字,其中2位是小数。
枚举类型(ENUM):定义字段只能从预定义的值中选择一个。例如,status ENUM(‘available’, ‘out_of_stock’)表示状态只能是从’available’或’out_of_stock’中选择一个。
这些属性在创建表时可以根据需要选择使用,以确保数据的完整性和准确性。