1.6 数据类型——boolean
MySQL不支持boolean类型,true和false在数据库中对应1和0。
1 | mysql> create table t15( |
1.7 关于数据类型的思考题
- 手机号码一般使用什么数据类型存储? char
- 电话号码使用什么数据类型 varchar
- 性别一般使用什么数据类型存储? char enum
- 学生年龄信息一般使用什么数据类型存储? tinyint
- 照片信息一般使用什么数据类型存储? binary
- 薪水一般使用什么数据类型存储? decimal
多学一招:一个字段到底选数字还是字符,取决于有没有计算的可能,如果没有计算的可能即使是数字也要用字符类型,比如手机号、QQ号,…
1.8 列属性——是否为空(null | not null)
null:可以为空
not null:不可以为空
思考题
- 学员姓名允许为空吗? 非空
- 家庭地址允许为空吗? 非空
- 电子邮件信息允许为空吗? 可以为空
- 考试成绩允许为空吗? 可以为空
1.9 列属性——默认值(default)
1、如果一个字段没有插入值,可以默认插入一个指定的值。
2、default关键字用来插入默认值
1 | mysql> create table t16( |
1.10 列属性——自动增长(auto_increment)
1、字段的值从1开始,每次递增1,特点就在字段中的数据不可能重复,适合为记录生成唯一的id
2、自动增长都是无符号整数。
3、在MySQL中,auto_increment必须是主键。但是主键不一定是自动增长的。
4、如果要给自动增长列插入数据,使用null关键字。
5、自动增长列上的数据被删除,默认情况下此记录的编号不再使用。
1.11 列属性——主键(primary key)
主键:唯一标识表中记录的一个或一组列
主键的特点:不能重复,不能为空
一个表只能有一个主键,主键可以有多个字段组成。
主键的作用:
1、 保证数据完整性
2、 加快查询速度
1.11.1 添加主键
方法一:创建表的时候添加主键
1 | mysql> create table t17( |
方法二:创建表的时候添加主键
1 | mysql> create table t18( |
方法三:更改表的时候添加主键
1 | mysql> create table t20( |