数据库复习

数据库

码(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
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值