第二章 数据类型、表的约束

数据类型

使用MySQL数据库存储数据时,不同的数据类型决定了MySQL存储数据方式的不同。

整数类型

整数类型分为5种

复制代码
TINYINT(tiny int)  占用1个字节,8位
SMALLINT(small int)
MEDIUMINT(medium int)
INT(int)
BIGINT(big int)
浮点数类型和定点数类型

存储的小数使用浮点数和定点数来表示,

复制代码
浮点数:
单精度FLOAT(float)
双精度DOUBLE(double)
复制代码
定点数:DECIMAL(decimal)
日期与时间类型
复制代码
YEAR(year) 
DATE(date)
TIME(time)
DATETIME(datetime)
TIMESTAMP(timestamp)
字符串和二进制类型
复制代码
CHAR(char)
VARCHAR(varchar)
BINARY(BINARY)
VARBINARY(varBINARY)
TEXT(text)
BLOB(blob)
ENUM(enum)
SET(set)
BIT(bit)

表的约束

为了防止数据表中插入错误数据,在MySQL中,定义了一些维护数据库完整性的规则,即表的约束。

主键约束primary key

通过主键可以快速查找表中的某条信息,它可以唯一标识表中的记录,就好比身份证可以用来标识人的身份一样。

每个数据表中最多只能有一个主键约束,定义为PRIMARY KEY的字段,不能有重复值,不能为NULL值。

1.单子段主键

由一个字段构成的主键。

复制代码
字段名 数据类型  PRIMARY KEY
2.多字段主键

由多个字段组合而成的主键。

复制代码
PRIMARY KEY (字段名1,……)
非空约束not null

非空约束指的是字段的值不能为NULL

复制代码
字段名 数据类型 NOT NULL;
唯一约束unique

唯一约束用于保证数据表中字段的唯一性,即表中字段的值不能重复出现。

复制代码
字段名 数据类型 UNIQUE;
默认约束default

默认约束用于给表中字段指定默认值,即当在表中插入一条新记录时,如果没有给这个字段赋值,那么,数据库系统会自动为这个字段插入默认值。

复制代码
字段名 数据类型  DEFAULT 默认值;
设置表的字段值自动增加auto_increment

在数据表中,若想为表中插入的新记录自动生成唯一的ID,可以使用AUTO_INCREMENT约束来实现。

AUTO_INCREMENT约束的字段可以是任何整数类型,默认情况下,该字段的值是从1开始自增的。

复制代码
字段名 数据类型 AUTO_INCREMENT;
相关推荐
希望永不加班2 小时前
SpringBoot 数据库索引优化:慢查询分析
java·数据库·spring boot·后端·spring
WL_Aurora2 小时前
MySQL 插入中文报错 ERROR 1366 (HY000): Incorrect string value 的解决办法
数据库·mysql
qq_349317482 小时前
CSS如何实现Bootstrap进度条自定义动画_利用keyframe关键帧
jvm·数据库·python
2401_871492852 小时前
Python机器学习怎么防止数据泄漏_确保Scaler在Pipeline内拟合
jvm·数据库·python
【心态好不摆烂】2 小时前
数据库基础
数据库
Bert.Cai2 小时前
MySQL UPPER()函数详解
数据库·mysql
2301_818008442 小时前
MySQL怎样在触发器中引用新旧数据行_NEW与OLD关键字详解
jvm·数据库·python
langsiming2 小时前
【无标题】
java·开发语言·数据库
Boop_wu3 小时前
[Java EE 进阶]Mybatis进阶(动态SQL)
java·数据库·maven·mybatis