
数据库系统原理
若水无言
这个作者很懒,什么都没留下…
展开
-
SQL字符串匹配和运算
匹配百分号(%):匹配任意子串select dept_name from department where building like ‘%Watson’; (或前缀匹配Watson%)下划线(_):匹配任意单个字符select dept_name from department where building like ‘W_tson’; 假如匹配的字符串中包含特殊字符(%...原创 2019-05-28 09:58:58 · 3229 阅读 · 0 评论 -
数据库的完整性约束
key:用于保证row(或称作元组,一条数据)的唯一性super-key:能够区分唯一的row的集合candidate key:super-key中最小集primary key:candidate key中人工选择一个(一张表只能有一个或多个组成的联合主键)举个例子:例如有students表,含有字段stu_number(学号)id(身份证号)name(姓名) 那么找出所有能够...原创 2019-05-28 10:36:29 · 1755 阅读 · 0 评论 -
数据库集合运算
集合运算SQL作用在关系(relation,就是指表)上的union、intersect和except运算对应于数学集合论中的∪, ∩和-运算union、intersect和except运算与select子句不同,它们会自动去除重复如果想保留所有重复,必须用union all、intersect all和except all假设一个元组在关系r中重复出现了m次,在关系s中重...转载 2019-05-28 11:13:49 · 2035 阅读 · 0 评论 -
视图与索引
视图为什么需要视图有时候没有必要向用户展示完整的表的模型(所有字段信息)表中某些涉及安全,隐私或权限的字段需要对用户隐藏综上,视图安全及易于使用什么是视图SQL允许通过查询来定义“虚关系”(又称作虚表,并不会真的去建立物理存储表,所存储的只是SQL查询逻辑代码。类似于方法定义或函数声明,查询就是具体实现)只有在调用的时候才会去查询,且不会存储查询结果集如何定义视图c...原创 2019-05-28 12:49:11 · 143 阅读 · 0 评论 -
谈谈我对数据库三范式的字面理解
今天看了看《数据结构系统原理》(黄靖 主编)这本书(备考自考,不然以我的品味,直接豆瓣9.0以上,哈哈哈)首先看下书上给出的定义:第一范式(1NF):设 R 为任一给定关系,如果 R 中的每个列与行的交点处的取值都是不可再分的基本元素,则 R 为第一范式第二范式(2NF):设 R 为任一给定关系,若 R 为 1NF,且其所有非主属性都完全函数依赖于候选关键字,则 R 为第二范式第三范式(...原创 2019-05-31 16:08:20 · 284 阅读 · 0 评论 -
SQL多表查询
多表查询的话,SQL提供了JOIN关键字来连接多张表的查询(即连接的是SELECT结果集)基本分为以下几种:JOIN / INNER JOIN-也称作内连接,是最为常用的一种JOIN,其效果是在表中存在一个匹配即返回该条数据等值连接:ON 子句中使用了运算符“=”,且连接的两个字段最好是主键不等连接:ON 子句中使用了不等于运算符,例如"<>" "<=>"等(可以...原创 2019-06-05 22:29:09 · 16439 阅读 · 0 评论 -
函数依赖
函数依赖是指关系中属性间(或者说是表中字段间)的对应关系。定义:设 R 为任一给定关系,如果对于 R 中属性 X 的每一个值,R 中的属性 Y 只有唯一值与之对应,则称 X 函数决定 Y 或称 Y 函数依赖于 X ,记作 X—>Y。其中,X 称为决定因素。通俗一点,就是给定一个 X 都有唯一的 Y。可以理解为函数 y = f(x); 对于任意的 x 都有唯一的 y ,且 y 的取值由 x...原创 2019-06-07 15:17:57 · 30964 阅读 · 3 评论