数据库是一个按数据结构来存储和管理数据的计算机软件系统 。
数据管理技术发展的三个阶段
数据技术中的几个名词:
数据库:Data Base ,简称DB
数据:Data
数据库系统: Data Base System ,简称:DBS
数据库系统管理: Database Management System ,简称DBMS
数据库管理员: Database Administrator,简称DBA
数据库技术:是一门研究数据库构造、存储、管理、和使用的一门软件科学
概念数据模型
逻辑数据模型
物理数据模型
结构数据模型三要素:关系数据结构、数据关系操作、数据完整性约束
典型的结构数据模型:
SQL功能 | 动词 |
---|---|
数据查询 | SELECT |
数据定义 | CREATE,DROP,ALTER |
数据操纵 | INSERT,UPDATE,DELETE |
数据控制 | GRANT,REVOKE |
AESC:降序,ASC:升序
ORDER BY 字段1 DESC/ASC,字段2 DESC/ASC SELECT commodity_name,cost_price FROM t_commodity ORDER BY cost_price ASC
对数据库及数据库中的各种对象进行创建、删除、修改等操作
作用对象可以是列、元组和表
定义:在查询结果的记录集合中移动的指针
使用游标的场景:若sql语句返回多个元组,则使用游标
不使用的场景:
游标的使用过程
注:如果游标被删除(free)后,就不能在打开(open)了
定义:是指保护数据库,防止因用户非法使用数据库造成数据泄露、更改或破坏
并发操作产生数据不一致性的原因
T1
和T2
一起,读入同一数据并修改,T2
提交的结果破坏了T1
提交的结果,导致T1
的修改丢失T1
读取了数据后,事务T2
对其进行了更新操作,就使得T1
无法再现前一次的读取结果。具体分为三种情况:
T1
读取某一数据后,事物T2
对其做了修改,当事务T1
再次读取数据时,与前一次不同T1
按一定条件从数据库获取某些数据后,事务T2
对其进行了删除操作,删除了其中部分记录,当T1
再以相同的条件读取数据的时候,发现某些数据就神秘的消失了T1
按一定的条件从数据中读取某些数据后,事务T2
对其插入了一些新的数据,导致事务T1
按相同的条件读取数据时,发现多了一些记录T1
修改了某一数据,并将其写回了磁盘,事务T2
读取同一数据后,T1
由于某种原因被撤销,这时T1
已修改过的数据恢复了原值,T2
读到的数据就与数据库中的数据不一致,则T2
读到的数据为"脏"数据,即不准确的数据封锁
(并发控制的基本方法就是封锁)
封锁协议(封锁的级别)
封锁的级别又称为一致性级别或隔离度。由各种锁的类型预期封锁的不同的封锁级别
数据库可恢复性定义:系统能把数据从被破坏、不正确的状态,恢复到最近的一个正确的状态,从而保证数据库的一致性。DBMS的这种能力称为数据库的可恢复性
恢复的基本原理是冗余,即数据库中任何一部分数据可以根据存储在系统别的冗余数据来重建