列属性—简单属性
列属性又称字段属性,一共有6个字段属性:null、默认值、列描述、主键、唯一键和自动增长。
NULL属性:
代表字段为空,如果对应的值为yes,表示该字段可以为空。
注意:在设计数据表的时候,尽量不要让数据为空。
default 默认值属性:
用户不插入数据,则以默认值填充,一般是用null填充
create table my_default(
name varchar(10) NOT NULL --不能为空
age int default 18 --,表示默认值为18
)charset utf8;
insert into my_default(name) values( 'jim');
insert into my_default values( 'jack',default); --default关键字的另外一个作用,显示告诉字段使用默认值
列描述
列描述:comment,是专门用于给开发人员维护的一个注释说明
基本语法:comment ‘字段描述’;
create table my_default(
name varchar(10) NOT NULL comment '当前是用户名,不能为空' //用comment的注释能在数据库中显示
age int default 18 --表示默认值为18 // 用--则不能在数据中显示
)charset utf8;
主键:
主要的键,primary key,在一张表中,有且只有一个字段,里面的值具有唯一性而且要求非空
主键分类:业务主键(有实际意义),逻辑主键(自然增长的整型)
- 主键的创建
系统提供了两种方式:
方案1:直接在需要当做主键的字段之后,增加primary key属性来确定主键
方案2:在所有字段之后增加primary key选项:primary ket(字段信息) - 表后增加
基本语法:alter table 表名 add primary key (字段); - 查看主键
1、查看表结构
2、查看表创建语句 - 删除主键
基本语法:alter table 表名 drop primary key; - 复合主键
为两个字段增加主键,在判断的时候组合判断
自动增长:
基本语法:在字段之后增加一个属性 auto_increment
插入数据的时候不指定值,就能触发自动增长,自动填充到该字段
-
修改自动增长
基本语法:Alter 表名 auto increment=值; -
删除自增长
-
初始化设置
Show variables like ‘auto_increment%’; -
细节问题
唯一键:
唯一键:unique key,用来保证对应的字段中的数据是唯一的
主键也可以保证数据唯一性,但是一张表只有一个主键
区别:
1、唯一键在一张表中可以有多个
2、唯一键允许字段数据为NULL,NULL可以有多个
- 创建唯一键
1、直接在表字段之后增加唯一键标识:unique[key]
2、在所有的字段之后使用unique key(字段列表);
3、在创建完表之后也可以增加唯一键
alter 表名 add unique key(字段列表);