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与数据库开发基 ...
随机推荐
- RDM 使用与破解
RDM 的下载地址 https://cdn.devolutions.net/download/Setup.RemoteDesktopManager.13.6.2.0.msi#_ga=2.2471513 ...
- dubbo的spi机制
SPI SPI是一种扩展机制,在java中SPI机制被广泛应用,比如Spring中的SpringServletContainerInitializer 使得容器启动的时候SpringServletCo ...
- python自动化之调试
#####调试 #####查看日志与断言 ''' 抛出异常使用raise语句.在代码中,raise语句包含以下部分: (1)raise关键字; (2)对Exception函数的调用; (3)传递给Ex ...
- C# Redis 切换数据库
对于Redis来说,它具有库的概念. 但是他只能通过 ChangeDb(long类型) 来操作. 如下代码: //实例化redis public static RedisClie ...
- 安装完打开 eclipse 提示 JVM 版本较低
在安装完 eclipse 后打开出现如下提示 解决办法: 1> 去官网下载最新版本安装 地址 2> linux 下直接下载安装 1.打开终端 2.控制台输入:su 3.控制台输入个人密码 ...
- 【转】如何在您的PCB大作上添加二维码?
开篇先给大家来段新闻截选: “8月20日,新加坡总理李显龙在国庆群众大会上演讲时,称中国移动支付(电子支付)领先全球,新加坡的移动支付还很落后,上海路边摊都有移动支付,新加坡人去上海就像乡巴佬. 这番 ...
- luogu4155/bzoj4444 国旗计划 (倍增)
成环,把每个区间变成两个然后展开成链 一个人的下一个人肯定是在彼此相交的基础上,右端点越大越好 于是就把它连到相交的.右端点最大的点上,连成一棵树 于是每次只要从某个节点开始,一直在树上跳到覆盖了一个 ...
- (转)JDK工具-javadoc命令
背景:最近在学习java基础知识,看到文档注释部分,一种是在dos命令下生成api文件,另一种是在eclipse下生成api文件.dos方式在<疯狂java讲义>中有详细的说明,eclip ...
- Eclipse配置Maven的一些问题
问题1:连接私服 build项目非常缓慢 配置好本地的setting文件后,发现build非常缓慢,照显示的进度,可能要一天才会build后一个项目,同事指导解决方法如下: MyEclipse2017 ...
- 浅谈跨平台框架 Flutter 的优势与结构
作者:个推iOS工程师 伊泽瑞尔 一.背景 目前,移动开发技术主要分为原生开发和跨平台开发两种.其中,原生应用是指在某个特定的移动平台上,使用平台所支持的开发工具和语言,直接调用系统提供的API所开发 ...