数据库速成笔记

数据库速成

第一节 绪论

1、数据库的四个基本概念

数据:描述事物的符号记录。

数据库:长期存储在计算机内,有组织的,可共享的大量数据的集合

数据库管理系统:位于用户和操作系统之间的一层数据管理软件

数据库系统:由数据库,数据库管理系统,应用程序和数据库管理员组成的存储、管理、处理、和维护数据的系统。

2、数据模型

概念模型:包括实体,属性,码,联系等。可以用ER图表示概念模型

逻辑模型:层次模型,网状模型,关系模型

物理模型:描述数据在系统内部的存储方式

3、ER图

实体长方形,属性椭圆形,关系菱形

4、常用数据模型

层次模型,网状模型,关系模型

5、数据库系统的结构

三级模式结构:外模式+模式+内模式

外模式:用户数据库可以看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图。

模式:是数据库中全体数据的逻辑结构和特征的描述。

内模式:一个数据库中只有一个内模式。他是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式。

二级模式映像

外模式/模式映像:

当模式改变时,由数据库管理员对各个外模式/模式映像做相应改变,可以使外模式保持不变。

模式/内模式映像:

当数据存储结构改变时,由数据库管理员对各个模式/内模式映像做相应改变,可使模式保持不变。

第二节 关系数据库

1、关系代数运算符

∪,差,∩,笛卡尔积,选择,投影,连接,除

连接分为:自然连接,外连接,左外连接,右外连接

在这里插入图片描述

2、关系完整性

实体完整性:主码唯一且非空

参照完整性:外码要么为空,要么对应另一个表的主码

用户定义完整性:写的数据要完整,如学号多少,姓名是啥

第三节 SQL语言(上)

1、SQL的基本概念

SQL(structured query language)结构化查询语言

2.常见数据库系统

在这里插入图片描述

3、SQL基本语法

3.1 模式定义删除
create schema "模式名" authorization "用户名"

% 模式删除
drop schema "模式名" cascadedrop schema "模式名" restrict
% cascade 把该模式的所有数据库对象删除
% restrict 如果该模式下有下属对象,拒绝删除
3.2 表的定义和删除
create table "表名" (
name vachar(20),
age int,
sex char(1)
)

%删除
drop table "表名" cascade/restrict

%修改表
alter table name add entrance date; %向name表插入entrance列,数据类型为日期型
3.3 索引的建立和删除
create unique/cluster index 索引名 on 表名

%修改
alter index SCno rename to SCSno 将索引名SCno改为SCSno

%删除
drop index SCSno

第四节 SQL(中)

1、 查询所有 & 查询部分列

select * form student
select Sno from student

2、结果去重

distinct

select distinct title from edu_course

3、查询加条件

where

在这里插入图片描述

select * from edu_course where price>2

select * from edu_course where titke like '%速成' %不限字符
select * from edu_course where titke like '_速成' %限制一个字符

4、聚集函数使用

在这里插入图片描述

select count(title) from edu_course  %计数

5、分组查询

group by如果要进行筛选,要用having

select title from edu_course group by title

select title from edu_course group by title  having title "ssm速成" 
%不能用where

6、连接

select t.*,c.* from edu_teacher,edu_coures where t.id = c.id

7、多表查询

select * from edu_course where title in (select title form edu where title = "ssm速成")

8、带有any all的子查询

在这里插入图片描述

select price from edu_course where price>all(select c.price from edu_teacher)

第五节 SQL语言(下)

1、数据插入,删除,修改

1.1、数据插入

insert into

insert into stu(name,classid) value ('lisi','11111')

insert into stu values(null,'shihs',26,'w','lisi')
1.2、数据修改

update

update stu set age = 35,sex = 'm' where id = 11
1.3、数据删除

delete

delete from stu where id = 100

2、视图

视图:是虚表,是一组数据的逻辑表示,本质是对应于一条select结果集被赋予一个名字

2.1 创建视图
create view "视图名" as select * from student where sname = 'xiaoming'
2.2 删除视图
drop view "视图名" csacade
2.3 查询视图
select * from "视图名" where sage > 20
2.4 更新视图
update "视图名" set Sname = "liuuu" where Sno = '30000'

第六节 数据库的安全性

grant 授予权限

revoke 回收权限

加上with grant option,代表可以将权限授予给别人

%授予用户对表的查询权限
grant select on "表名" to "用户名" with grant option

revoke select on "表名" to "用户名" 

第七节 数据库的完整性

正确性 内容正确

相容性 两个表相连内容一致

维护完整性

1、三大完整性

实体完整性 主码唯一且非空

参照完整性 外码要么没有,要么对应另一个表的主码

用户定义完整性

非空 is not null

列值唯一 unique

满足某一条件 check(sex in(‘男’,’女‘))

2、断言

create assertion "断言名"

3、触发器

trigger

第八节 关系数据库理论

1、范式分类

1NF 所有字段不可再分解,满足原子性

2NF 不包含非主属性对候选码的部分函数依赖

3NF 不包含非主属性对候选码的传递函数依赖

BCNF 消除每一属性对候选键的传递依赖

2、候选码,最小函数依赖集计算

在这里插入图片描述

第九节:数据库设计

1、ER图

在这里插入图片描述

2、ER图转关系模型

在这里插入图片描述

3、注意事项

在这里插入图片描述

第10节 数据库编程

第11节 关系查询处理和查询优化查询过程

第12节 数据库恢复技术

1、事务四大特性

ACID

A:原子性 :要么全做,要么全部不做

C:一致性:和原子性密切相关,防止导致数据不一致

I:隔离性:一个事务的执行不能被其他事务干扰

D:持久性:数据库的改变是永久的。比如要存入磁盘

2、故障种类

事物内部故障

系统故障

介质故障

计算机病毒

3、恢复方式

数据转储

日志文件

第13节 并发控制

1、并发带来的问题

丢失修改 修改没生效

**读脏数据 ** 数据没更新就读了

不可重复读 两次读到的数据不一样

2、解决方法

排它锁写锁 也叫 X锁

共享索读锁 也叫 S锁

3、封锁协议

一级封锁协议:修改时,必须加X锁,直到结束 解决丢失修改

二级封锁协议:读时,加S锁,用完就放 解决读脏数据

三级封锁协议:读时,加S锁,直到结束 解决不可重复读

在这里插入图片描述

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大果壳Clap

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值