mysql学习四:插入、更新、删除

给所有字段插入数据:

insert into 表名 values (values1, value2, valu3..........);

 

给指定字段插入数据:没有指定的字段,数据库会用默认的值代替

insert into 表名 (字段2, 字段4, 字段5.....) values (value2, value4, valu5......);

 

插入多条数据:

insert into 表名 (字段1,字段2,字段..........) values (value1, valu2, .......), (value1,value2........);

 

 

更新:

update 表名 set 字段x=valuex,字段y=valuey where 条件;

 

更新多条:如果根据条件查询出来的记录有多条,那就是多条更新

update 表名 字段x=valuex, 字段y=valuey where 条件;

 

 

删除:如果根据条件查询出来的记录有多条,就是多条删除

delete from 表名 where 条件;

 

修改表:

drop table if exists my_student;
create table my_student (
no int(4),
name varchar(32)
);
# 修改变结构
# 增加字段email
alter
table my_student add email varchar(128);
# 修改字段no的类型:修改长度为8字节
alter table my_student modify no int(8);
# 删除字段email
alter table my_student drop email;
# 修改字段名name为username
alter table my_student change name username varchar(32);

 

 

字段四大约束之外键约束

外键约束:

create table t_class(
cno int(4) primary key,
cname varchar(32)
);
create table t_student(
sno int(4) primary key auto_increment,
sname varchar(32),
classno int(4),
constraint t_student_classno_fk foreign key(classno) references t_class(cno)
);
#t_student表中的classno字段有外键约束,即classno的值必须在t_class表的cno字段值的列表以内;
#示例, 如果t_class表的cno没有200这个值 ,则将以下插入数据将失败
insert into t_student(sname,classno) values('jerry',200);

 

有外键约束的两张表,具有父子关系,被关联的表t_class是父表,具有约束键的t_student表是子表。

必须先有父表的值,才能有子表的值。

父表的字段(约束字段)值,要具有唯一性。

当然,外键字段的值可以为null,此时子表的数据叫孤儿数据。

级联更新与级联删除:在添加级联更新与级联删除的时侯,需要在外键约束后面添关键字。

注意:级联更新与级联删除操作谨慎使用,因为级联操作会将数据改变或者删除。

级联删除:on delete cascade,在删除父表数据的时侯,将自动删除子表中的数据

mysql没有提供修改外键约束的语法,只有在创建表时创建外键约束或者删除外键约束再创建外键约束

alter table t_student drop foreign key t_student_classno_fk;
alter table t_student add constraint t_student_classno_fk foreign key(classno) references t_class(cno) on delete cascade;

 

级联更新:on update cascade,在更新父表数据的时侯,将自动更新子表中的数据

alter table t_student drop foreign key t_student_classno_fk;
alter table t_student add constraint t_student_classno_fk foreign key(classno) references t_class(cno) on update cascade;

 

posted on 2018-09-15 22:47  myworldworld  阅读(114)  评论(0)    收藏  举报

导航