一、创建数据表
1.创建表的基本格式
create为创建数据表的关键字
不同字段之间使用逗号(,)进行分隔
语句最后以分号“;”结束
2.设置约束条件
(1)设置主键约束
主键也称为主码,用于唯一标识该条记录。
关键字为:primary key
一张表只能有一个主键
主键值不能为空
格式一:定义字段时设置主键
格式二:定义所有字段后设置主键
(2)设置自增约束
如果用户希望某个字段能够按照顺序自动生成编号,可以为该字段设置自增约束。
关键字为:auto_increment
一张表只能设置一个字段为自增约束,并且该字段必须为主键
默认的初始值为1,每增加一条记录,字段值自动增加1
字段类型必须为整数类型
语法格式:
(3)设置非空约束
关键字为not null
作用是:规定字段值不能为空
用户在向数据表中插入数据时,如果设置非空约束的字段没有指定值,系统就会报错
语法格式:
(4)设置唯一性约束
当数据表中某个字段的值不允许重复时,可以使用唯一性的约束。
关键字为:unique
设置了唯一性约束的字段,插入的数据于数据表中已存在的数据相同时,系统会报错。
格式一:定义字段时设置唯一性约束
格式二:定义所有字段后设置唯一性约束
(5)设置无符号约束
关键字:unsigned
作用:规定该字段所存储的数据不为负数
格式:
(6)设置默认约束
关键字:default
对于设置了默认约束的字段插入记录时,如果没有为该字段赋值,系统会自动将默认值插入到此字段中。
没有设置默认约束的字段,系统会自读设置默认值为not null。
格式:
(7)设置外键约束
设置外键约束的作用是可以将两张表关联在一起。
格式:
关键字:constraint foreign key(字段名) references
(8)设置表的存储引擎
格式:
二、查看表结构
1.查看表的基本结构
关键字为describe,格式如下:
Field:表示字段名称
Type:表示数据类型
Null:表示是否可以存储空值。
key:表示是否创建索引,PRI表示主键索引,UNI表示唯一索引。
Default:表示默认值
Extra:表示与字段有关的附加信息。
提示
一般情况下,describe可以简写为desc
2.查看建表语句
三、修改表
1.修改表名
语法格式:
2.修改字段数据类型
语法格式:
alter table 旧表名 modify 字段名 新数据类型
3.修改字段名
语法格式:
alter table 表名 change 旧字段名 新字段名
提示:使用上述语句也可以同时修改数据类型。例如,将g_name字段名改为name,数据类型为char(30),sql语句如下:
4.添加字段
(1)在表的最后一列添加字段
格式:alter table 表名 add 字段名 数据类型
(2)在表的第一列添加字段
格式:alter table 表名 add 字段名 数据类型 first
(3)在表的指定列之后添加字段
格式:alter table 表名 add 字段名 数据类型 after 字段名2
5.删除字段
格式:alter table 表名 drop 字段名;
6.修改字段顺序
格式:alter table 表名 modify 字段1名 数据类型 first|after 字段2名;
first:表示调整该字段到表的第一列
after:表示调整该字段到表的某一列后面
7.修改存储引擎
格式:alter table category engine=InnoDB
8.约束的添加与删除
建表完成后:
1.主键约束
添加:alter table table_name add primary key (字段)
删除:alter table table_name drop primary key
2.非空约束
添加:alter table table_name modify 列名 数据类型 not null
删除:alter table table_name modify 列名 数据类型 null
3.唯一约束
添加:alter table table_name add unique 约束名(字段)
删除:alter table table_name drop key 约束名
4.自动增长
添加:alter table table_name modify 列名 int auto_increment
删除:alter table table_name modify 列名 int
5.默认值约束
添加:alter table 表名 modfiy 字段名 数据类型 default 值;
删除:alter table 表名 modify 字段名 数据类型 default null;
6.无符号约束
添加:alter table 表名 modfiy 字段名 数据类型 unsigned;
删除:alter table 表名 modify 字段名 数据类型;
7.外键约束的添加和删除
四、删除表
先删除外键 后删除表