表的相关操作
一.创建表(create)
结构:create table xxx(字段名1 数据类型1,字段名2 数据类型2);
create table是创建表的关键字
id name sex 等等都是字段名,是形容描述数据的
int varchar(10) float 等等都是数据类型,用来表示数据的类型
-- 创建一个个人信息表,有id,有name
create table lgh(
id int, -- id是字段名 int是数据类型
name varchar(10) --name是字段名 varhar(10)是数据类型
);
显示如下结构说明创建成功
创建完成后想要查看可以这样做(点击创建表所在数据库里面的表,右击刷新就可以了)
二.查看表(show)(desc)
查看表详细结构show create table xxx;
查看表结构desc xxx; / describe xxx;
desc lgh; --查看表lgh的详细结构
show create table lgh; --查看表lgh的结构
三.修改表(alter)
3.1.修改表名(rename)
alter table 旧表名 rename 新表名;
alter table lgh rename hgl; -- 将表名lgh改为hgl
3.2.修改字段的数据类型(modify)
alter table 表名 modify 要修改的字段名 字段的数据类型;
alter table hgl modify id int(10); -- 将表hgl的id字段的数据类型改为int(10)
alter table hgl modify id int(11),modify name varchar(10); -- 将表hgl的id字段和name字段的数据类型都改了
3.3.修改字段名(change)
alter table 表名 change 旧字段名 新字段名 新字段数据类型;
alter table hgl change name sex varchar(5); -- 修改hgl的字段name改为sex
3.4.增加字段(add)
alter table 表名 add 字段名 字段名类型 新字段位置;
alter table hgl add sorce varchar(10) first; -- 增加字段sorc,数据类型为varchar,并置顶
3.5.修改字段的排列位置(modify)
alter table 表名 modify 字段名 字段类型 字段位置 ;
alter table hgl modify sex varchar(10) first; -- 将字段id的位置置顶
alter table hgl modify sex varchar(10) after sex; -- 将字段id的位置置于sex后面
3.6.删除字段(drop)
alter table 表名 drop 字段名;
alter table hgl drop sex; -- 删除表hgl中的字段sex
四.删除表
drop table xxx;
drop table xxx; -- 删除表xxx
约束
一.完整性约束
表主要支持以下六种完整性约束
二.主键约束(primary key)
定义:约束表中的某一字段 一唯一标识于一条记录,这一纪录不能被重复,也不能为空
id int primary key 主键约束关键字
create table emp(
id int primary key, -- 单个字段的主键约束
name varchar(10),
sex varchar(10),
ipone varchar(20),
email varchar(20)
);
create table emp(
id int ,
name varchar(10),
sex varchar(10),
ipone varchar(20),
email varchar(20),
primary key(id ,name) -- 多个字段的主键约束
);
在已有表中添加主键约束(primary key)
alter table xxx add primary key(id,name); --在表xxx中添加id和name的主键约束
在已有表中删除主键约束(drop)
alter table xxx drop primary key; --删除表xxx中的主键约束
三.唯一约束
定义:约束表中的纪录不能被重复
id int unique 唯一约束关键字
create table emp(
id int primary key, -- 单个字段的主键约束
name varchar(10),
sex varchar(10),
ipone varchar(20) unique, -- 单个字段不能重复,唯一约束
email varchar(20)
);
create table emp(
id int ,
name varchar(10),
sex varchar(10),
ipone varchar(20),
email varchar(20),
unique(ipone,email) -- 多个字段的唯一约束
);
在已有表中添加唯一约束(unique)
alter table xxx add unique(ipone,email); --在表xxx中添加ipone和email的唯一约束
在已有表中删除唯一约束(drop index)
alter table xxx drop index ipone; --删除表xxx中的ipone的唯一约束
四.非空约束
定义:约束表中的字段不能为空
id int not null 非空约束关键字
create table emp(
id int primary key, -- 单个字段的主键约束
name varchar(10) not null, --此字段不能为空
sex varchar(10)not null, -此字段不能为空
ipone varchar(20) unique, -- 单个字段不能重复,唯一约束
email varchar(20)
);
在已有表中添加非空约束(modify xxx not null)
alter table xxx modify name varchar(10) not null; --在表xxx中添加name的非空约束
在已有表中删除非空约束(modify xxx null)
alter table xxx modify name varchar(10) null; --删除表xxx中的name的非空约束
五.默认约束
定义:约束表中的字段的默认值
id int default “默认值 ” 默认约束关键字
create table emp(
id int primary key, -- 单个字段的主键约束
name varchar(10) not null, --此字段不能为空
sex varchar(10)not null, -此字段不能为空
ipone varchar(20) unique, -- 单个字段不能重复,唯一约束
email varchar(20) default ‘lgh@.com’ --定义email的默认值为[email protected]
);
在已有表中添加默认值约束(modify xxx default)
alter table xxx modify email varchar(10) default ‘@meil.com’; --在表xxx中添加email的默认值
在已有表中删除默认值约束(modify xxx)
alter table xxx modify email varchar(10) ; --在表xxx中删除email的默认值
六.自增约束
定义:使表中的某个字段的值自动增长
id int auto_increment 自增约束关键字
create table emp(
id int primary key auto_increment, -- 单个字段的主键约束 以及自增约束
name varchar(10) not null, --此字段不能为空
sex varchar(10)not null, -此字段不能为空
ipone varchar(20) unique, -- 单个字段不能重复,唯一约束
email varchar(20) default ‘lgh@.com’ --定义email的默认值为[email protected]
);
在已有表中添加自增约束(modify xxx auto_increment )
alter table xxx modify id int auto_increment ; --在表xxx中添加自增约束
在已有表中删除自增约束(modify xxx)
alter table xxx modify id int; --在表xxx中删除自增约束
七.外键约束
定义:某个表中字段的值依赖于另一张表中的字段值,且被依赖的字段必须有主键约束或者唯一约束,被依赖的表通常是父表或者是主表,而设置外键约束的表是子表或者从表
foreign key 本表的外键约束
references 参照主表的字段
可选项 foreign key(外键字段) references 主表名称(被参照主表的名称)
create table class(
id_co int primary key,
name varchar(10)
);
create table student(
id int primary key,
clazz int(3),
constraint fk_clazz foreign key(clazz) references class(id_co)
);
在已有表中添加外键约束(constraint foreign key)
alter table xxx add constraint fk_字段名称 foreign key(clazz) references class(id_co); --在表xxx中添加外键约束
在已有表中删除外键约束(drop xxx)
alter table xxx drop foreign key xxxx; --在表xxx中删除外键约束xxxx;
文章来之不易 如有漏洞错误请大神评论区告知
更多精彩点击这里