数据库复习

本文详细介绍了数据库的核心概念,包括码、范式、B+树和事务。讨论了函数依赖、正则覆盖、无损连接的重要性,并通过例子解释了事务的ACID特性、冲突可串行化和恢复系统的机制。特别强调了日志记录在确保数据一致性和事务原子性中的关键作用。
摘要由CSDN通过智能技术生成

数据库

码(Key)

超码(super key):是一个或多个属性的集合,这些属性的组合可以使我们在一个关系中唯一的标识一个元祖。

候选码( candidate key):超码中可能包含了无关紧要的属性,我们通常只对这样的一些超码感兴趣,它们的任意子集都不能成为超码。这样最小超码称为候选码(candidate key) 。

主码(primary key): 被数据库设计者所选中用来标识一个关系的候选码。

外码(foreign key):一个关系模式r1可能在他的属性中包含了另一个关系的r2的主码。这个码就称为**参照关系(referenced relation)**的外码(foreign key)。

SQL​

一、DML

  • DML(data manipulation language)数据操纵语言:

就是我们最经常用到的 SELECT、UPDATE、INSERT、DELETE。 主要用来对数据库的数据进行一些操作。

SELECT 列名称 FROM 表名称
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
INSERT INTO table_name (1,2,...) VALUES (1,2,....)
DELETE FROM 表名称 WHERE 列名称 =

二、DDL

  • DDL(data definition language)数据库定义语言:

其实就是我们在创建表的时候用到的一些 sql ,比如说:CREATE、ALTER、DROP等。DDL主要是用在定义或改变表的结构,数据类型,表之间的链接和约束等初始化工作上

CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)

ALTER TABLE table_name
ALTER COLUMN column_name datatype

DROP TABLE 表名称
DROP DATABASE 数据库名称

三、DCL

  • DCL(Data Control Language)数据库控制语言:

是用来设置或更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)语句。这个比较少用到。

在公司呢一般情况下我们用到的是DDL、DML这两种。

String Operations

  • percent (%). The % character matches any substring.

  • underscore (_). The _ character matches any character.

常见语言

between
select name   
from instructor   
where salary between 90000 and 100000 

(select course_id from section where sem = ‘Fall’ and year = 2009)  
union 
(select course_id from section where sem = ‘Spring’ and year = 2010)

(select course_id from section where sem = ‘Fall’ and year = 2009)  
intersect
(select course_id from section where sem = ‘Spring’ and year = 2010)

 Find courses that ran in Fall 2009 but not in Spring 2010 
(select course_id from section where sem = ‘Fall’ and year = 2009)  
except 
(select course_id from section where sem = ‘Spring’ and year = 2010)

distinct 

Left-join

Right-join

范式(Normal Form)

第一范式 : 一个域是原子的(atomic),如果该域的元素被认为是不可再分的单元。我们称一个关系R属于第一范式(First Normal Form,1NF),如果R的所有属性的域都是原子的

函数依赖(Function Depend): 对于实例中的所有元素,如果t1和t2,若t1[a] = t2[a] ,则 t1[b] = t2[b]. a → b a \to b

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CSDN(中国软件开发网)是一个技术交流平台,其中涵盖了各种领域的技术内容,包括数据库数据库复习是指回顾和巩固数据库的相关知识和技能。 数据库是存储、管理和组织数据的一种数据结构。在软件开发中,数据库起到储存数据的作用,同时也提供了数据操作、查询和管理的功能。因此,深入理解数据库的原理和技术对于开发人员来说非常重要。 数据库复习的内容可以包括以下几个方面: 1. 数据库基础知识:了解数据库的概念、特点、分类和常用的数据库系统,如关系型数据库(如MySQL、Oracle)和非关系型数据库(如MongoDB、Redis)。 2. SQL语言:掌握SQL语言的基本语法、查询、更新、删除和插入数据的操作,熟悉常用的SQL函数和操作符,能够编写复杂的SQL查询语句和数据操作语句。 3. 数据库设计:了解数据库设计的基本原则和范式,能够进行数据库的逻辑设计和物理设计,并能评估和调整数据库的性能。 4. 数据库索引和优化:理解数据库索引的原理和类型,了解索引的创建、使用和优化策略,能够通过合理的索引设计和优化来提升数据库的查询性能。 5. 数据库事务和并发控制:掌握数据库事务的概念和特性,理解并发访问引起的数据一致性问题,学会应对并发访问的技巧和控制策略。 6. 数据库备份和恢复:了解数据库备份和恢复的重要性,掌握常用的数据库备份和恢复方法和工具,能够制定和执行数据库的备份和恢复策略。 7. 数据库安全性:熟悉数据库的安全性问题和常见的安全攻击,能够使用数据库的安全机制和技术来防护和保护数据的安全。 通过对CSDN中数据库相关文章的阅读、学习和实践,可以加深对数据库的理解和掌握,提高数据库的设计和开发能力。此外,还可以通过访问CSDN的论坛和社区,与其他开发者交流和分享经验,进一步提升自己的技术水平。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值