Database Course Summary 001
0x01. 基本概念
SQL:Structured English Query Language
1. 数据 Data
数据(Data):描述事物的符号记录;数据内容是事物特性的反应或描述;数据是符号的集合。
- 数据是数据库中存储的基本对象。
- 数据的最小存取单位是记录。
- 符号:不仅指数字、字母、文字和其他特殊字符,且包括图形、图像、声音等多媒体数据。
- 记录:不仅指写在纸上,而且包括记录在各种介质上。
2. 数据库DB(Database)
数据库(Database,简称 DB):长期储存在计算机内、有组织的、可共享的大量数据集合。
3. 数据库管理系统DBMS( Database Management System)
数据库管理系统(Database Management System,简称 DBMS):用户与操作系统之间的一层数据管理软件。 用途:科学地组织和存储数据、高效地获取和维护数据。
4. 数据库系统DBS(Database System)
数据库系统(Database System,简称 DBS):计算机系统中引入数据库后的系统构成。
- 在不引起混淆的情况下常常把数据库系统简称为数据库。

数据库系统:
数据的管理者:DBMS
数据面向的对象:现实世界
数据的结构化:整体结构化
数据的共享程度:共享性高
数据的独立性:高度的物理独立性和一定的逻辑独立性
数据控制能力:由DBMS统一管理和控制
数据库特点:
数据结构化
数据的共享性高、冗余度低、易扩充
数据独立性高
5.数据模型
数据模型:用来抽象、表示和处理现实世界中的数据和信息的工具;
通俗地讲数据模型就是现实世界的模拟。
数据模型应满足三方面要求
能比较真实地模拟现实世界
容易为人所理解
便于在计算机上实现
数据模型的组成要素
数据结构:数据库中对象(Object)类型的集合。(静态特性)
数据操作:对数据库中对象的实例允许执行的操作的集合。(动态特性)
数据的约束条件:一组完整性规则的集合,反映数据及其联系所具有的 制约和依存规则,以保证数据的正确,有效和相容。
常用数据模型
非关系模型
- 层次模型(Hierarchical Model)
- 网状模型(Network Model )
- 数据结构:以基本层次联系为基本单位
- 基本层次联系:两个记录以及它们之间的一对多(包括一对一)的联系
关系模型(Relational Model)
- 数据结构:表
面向对象模型(Object Oriented Model)
- 数据结构:对象
对象关系模型(Object Relational Model)
6. 信息世界中的基本概念
实体(Entity):客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念。
属性(Attribute):实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。
码(Key):唯一标识实体的属性集称为码。
域(Domain):属性的取值范围称为该属性的域。
实体型(Entity Type):用实体名及其属性名集合来抽象和刻画同类实体称为实体型。
实体集(Entity Set):同型实体的集合称为实体集。
同型实体的取值集合称为实体集(实体值的集合).
联系(Relationship):现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系。
eg:举例说明上述基本概念
| 概念 | 例子 |
|---|---|
| 实体(对象) | 课程 |
| 属性 | 课程号,课程名,学分 |
| 码 | 课程号 |
| 域 | 学分取值范围0-100 |
| 实体型 | 课程 (课程号,课程名,学分) |
| 某个实体(实体值) | (”01”,”数据库原理”,”3”) |
| 实体集(Entity Set) | (”01”,”数据库原理”,”3”)(”02”,”计算机网络”,”2”)…... |
同型实体的取值集合称为实体集(实体值的集合)。
7. 实体-联系方法(E-R 方法,也称为 E-R 模型)
实体型:用矩形表示,矩形框内写明实体名。
属性:用椭圆形表示,并用无向边将其与相应的实体连接起来。
键用下划线表示;
单属性:某个特定的实体在该属性的取值唯一。
表示方法:带有属性名的椭圆形框;
多值属性:某个特定的实体在该属性的取值多于一个。
表示方法:带有属性名的双椭圆形框;
派生属性:可以从其他相关的属性或实体派生出来的属性值。如学生(学号,姓名,平均成绩),选课(学号,课程号,成绩),则平均成绩可由学生所选课程的总成绩除以课程总数来得到。称平均成绩为派生属性,而成绩为基属性,或存储属性;
表示方法:带有属性名的虚椭圆形框;
复合属性:可再分的属性;

8. 关系模型的基本概念
关系(Relation):一个关系对应通常说的一张表。
元组(Tuple):表中的一行即为一个元组。
属性(Attribute):表中的一列即为一个属性,给每一个属性起一个名称即属性名。
码(Key):表中的某个属性组,它可以唯一确定一个元组。
域(Domain):属性的取值范围。
分量:元组中的一个属性值。
关系模式:对关系的描述
关系名(属性1,属性2,…,属性n)
例:学生(学号,姓名,年龄,性别,系,年级)

9. 实体与实体间的联系
- 表示方法:
- 实体型:直接用关系(表)表示。
- 属性:用属性名表示。
- 一对一联系:隐含在实体对应的关系中。
- 一对多联系:隐含在实体对应的关系中。
- 多对多联系:直接用关系表示。
- 1:1联系的转换方法
- 将1:1联系转换为一个独立的关系:与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,且每个实体的码均是该关系的候选码。
- 将1:1联系与某一端实体集所对应的关系合并,则需要在被合并关系中增加属性,其新增的属性为联系本身的属性和与联系相关的另一个实体集的码。
Database Course Summary 001的更多相关文章
- Network Principle Course Summary 001
1.物理层 物理层 协议:RJ45.CLOCK.IEEE802.3 (中继器,集线器) 作用:通过媒介传输比特,确定机械及电气规范(比特Bit) 1.1 通信基础 数据 (data) —— 运送消息的 ...
- P6 Professional Installation and Configuration Guide (Microsoft SQL Server Database) 16 R1
P6 Professional Installation and Configuration Guide (Microsoft SQL Server Database) 16 R1 May ...
- 小型文件数据库 (a file database for small apps) SharpFileDB
小型文件数据库 (a file database for small apps) SharpFileDB For english version of this article, please cli ...
- SharpFileDB - a file database for small apps
SharpFileDB - a file database for small apps 本文中文版在此处. I'm not an expert of database. Please feel fr ...
- P6 EPPM Manual Installation Guide (Oracle Database)
P6 EPPM Manual Installation Guide (Oracle Database) P6 EPPM Manual Installation Guide (Oracle Databa ...
- C# 利用MS的 EntLib的Database类编写的DbHelper
C# 利用MS的 EntLib的Database类编写的DbHelper,由于MS的EntLib对Oracle.SQL Server和MySql已经封装,所以可以该DbHelper可以适用这三种数据库 ...
- P6 EPPM Installation and Configuration Guide 16 R1 April 2016
P6 EPPM Installation and Configuration Guide 16 R1 April 2016 Contents About Installing and ...
- oracle_hc.sql
select event,count(1) from gv$session group by event order by 2;exec dbms_workload_repository.create ...
- .NET基础拾遗(6)ADO.NET与数据库开发基础
Index : (1)类型语法.内存管理和垃圾回收基础 (2)面向对象的实现和异常的处理 (3)字符串.集合与流 (4)委托.事件.反射与特性 (5)多线程开发基础 (6)ADO.NET与数据库开发基 ...
随机推荐
- 【转】mysql优化步骤
作者:zhuqz链接:https://www.zhihu.com/question/19719997/answer/81930332来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请 ...
- wordpress 点击文章图片 不能编辑(chrome下面) wordpress Uncaught DOMException: Failed to execute 'setBaseAndExtent' on 'Selection': There is no child at offset 1.
说明:在chrome下面,编辑文章插入的图片,点击到图片上面,没有菜单显示. 报错: tinymce.min.js:10 Uncaught DOMException: Failed to execut ...
- python基础教程1:入门基础知识
写在系列前,一点感悟 没有梳理总结的知识毫无价值,只有系统地认真梳理了才能形成自己的知识框架,否则总是陷入断片儿似的学习-遗忘循环中. 学习方法真的比刻苦"傻学"重要多了,而最重要 ...
- 统计nginx日志的状态码
日志格式 61.159.140.123 - - [23/Aug/2014:00:01:42 +0800] "GET /favicon.ico HTTP/1.1" 404 \ &qu ...
- angular2 bootstrap modal
----html------- <div #ele class="modal fade " style="z-index: 9999" data-back ...
- Jenkins发送邮件中文乱码问题解决
在环境变量中添加: JAVA_TOOL_OPTIONS = -Dfile.encoding=UTF8 配置好后,重启Jenkins即可
- [JSOI2008]魔兽地图
Description DotR里面的英雄只有一个属性——力量. 他们需要购买装备来提升自己的力量值,每件装备都可以使佩戴它的英雄的力量值提高固定的点数,所以英雄的力量值等于它购买的所有装备的力量值之 ...
- Spring MVC测试框架
原文链接:http://jinnianshilongnian.iteye.com/blog/2004660 Spring MVC测试框架详解——服务端测试 博客分类: springmvc杂谈 spri ...
- JSON.parseObject(String str)与JSONObject.parseObject(String str)的区别
一.首先来说说fastjson fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发.其主要特点是: ① 快速:fastjson采用独创的算法, ...
- 自己写的一个Vue
下面这里是我自己写的一个小型的vue,原理就是proxy: //Proxy天生没有prototype,因此要加上,不然extends会报错 Proxy.prototype = Proxy.protot ...