数据库基础知识-结

事务管理
一组操作要么全部完成,要么全部不完成
数据库的回滚;rollback;
rollback 回滚的意思。 就是数据库里做修改后 ( update ,insert , delete)未commit 之前 使用rollback 可以恢复数据到修改之前。

数据库设计—三范式

第一范式(每一列属性都是不可再分的属性值,确保每一列的原子性):当关系模式R的所有属性都不能在分解为更基本的数据单位时,称R是满足第一范式的,简记为1NF。满足第一范式是关系模式规范化的最低要求,否则,将有很多基本操作在这样的关系模式中实现不了。每一列属性都是不可再分的属性值,确保每一列的原子性

第二范式(每一行的数据只能与其中一列相关,即一行数据只做一件事。只要数据列中出现数据重复,就要把表拆分开来。):如果关系模式R满足第一范式,并且R得所有非主属性都完全依赖于R的每一个候选关键属性,称R满足第二范式,简记为2NF。

第三范式(数据不能存在传递关系,即没个属性都跟主键有直接关系而不是间接关系。):设R是一个满足第一范式条件的关系模式,X是R的任意属性集,如果X非传递依赖于R的任意一个候选关键字,称R满足第三范式,简记为3NF.

22、设计一张区域表
create table areas(
id int primary key auto_increment not null,
name varchar(20) not null,
pid int
);

insert into areas values(0,'广东省', null);
insert into areas values(0,'深圳市', 1);
insert into areas values(0,'广州市', 1);
insert into areas values(0,'宝安区', 2);
insert into areas values(0,'天河区', 5);

23、自关联
1、查询所有的省
select * from areas where pid is NULL;
2、查询广东省的所有城市
select * from areas where pid=1;
select city.* from (areas as province inner join areas as city)[on province.id=city.pid] where province.name=’广东省’;
select city.* from areas as province inner join areas as city on province.id=city.pid where province.name=’广东省’;

猜你喜欢

转载自blog.csdn.net/qq_31844775/article/details/82502253