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的更多相关文章

  1. Network Principle Course Summary 001

    1.物理层 物理层 协议:RJ45.CLOCK.IEEE802.3 (中继器,集线器) 作用:通过媒介传输比特,确定机械及电气规范(比特Bit) 1.1 通信基础 数据 (data) —— 运送消息的 ...

  2. 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 ...

  3. 小型文件数据库 (a file database for small apps) SharpFileDB

    小型文件数据库 (a file database for small apps) SharpFileDB For english version of this article, please cli ...

  4. SharpFileDB - a file database for small apps

    SharpFileDB - a file database for small apps 本文中文版在此处. I'm not an expert of database. Please feel fr ...

  5. P6 EPPM Manual Installation Guide (Oracle Database)

    P6 EPPM Manual Installation Guide (Oracle Database) P6 EPPM Manual Installation Guide (Oracle Databa ...

  6. C# 利用MS的 EntLib的Database类编写的DbHelper

    C# 利用MS的 EntLib的Database类编写的DbHelper,由于MS的EntLib对Oracle.SQL Server和MySql已经封装,所以可以该DbHelper可以适用这三种数据库 ...

  7. P6 EPPM Installation and Configuration Guide 16 R1 April 2016

    P6 EPPM Installation and Configuration Guide 16 R1         April 2016 Contents About Installing and ...

  8. oracle_hc.sql

    select event,count(1) from gv$session group by event order by 2;exec dbms_workload_repository.create ...

  9. .NET基础拾遗(6)ADO.NET与数据库开发基础

    Index : (1)类型语法.内存管理和垃圾回收基础 (2)面向对象的实现和异常的处理 (3)字符串.集合与流 (4)委托.事件.反射与特性 (5)多线程开发基础 (6)ADO.NET与数据库开发基 ...

随机推荐

  1. [转帖] 学习 Linux 大页的内存知识

    一.在解释什么情况下需要开启大页和为啥需要开启大页前先了解下Linux下页的相关的知识:以下的内容是基于32位的系统,4K的内存页大小做出的计算1)目录表,用来存放页表的位置,共包含1024个目录en ...

  2. 为elasticSearch开发c++接口

    一.    ElasticSearch是什么 ElasticSearch是目前开源全文搜索引擎的首选,可以快速存储,搜索和分析海量数据.Stack Overflow,Github等都在使用. Elas ...

  3. 深入理解es6的promise

    一.promise入门 1. Promise对象是什么 回调函数的另一种原生实现,比之前回调函数的写法机构清晰,功能强大, 2.以前回调这么写 function a(fn){ let h = 1; s ...

  4. 【设计模式】——工厂方法FactoryMethod

    前言:[模式总览]——————————by xingoo 模式意图 工厂方法在MVC中应用的很广泛. 工厂方法意在分离产品与创建的两个层次,使用户在一个工厂池中可以选择自己想要使用的产品,而忽略其创建 ...

  5. 【AI科技大本营】

    从AutoML.机器学习新算法.底层计算.对抗性攻击.模型应用与底层理解,到开源数据集.Tensorflow和TPU,Google Brain 负责人Jeff Dean发长文来总结他们2017年所做的 ...

  6. 【BZOJ1970】[AHOI2005]矿藏编码(模拟)

    [BZOJ1970][AHOI2005]矿藏编码(模拟) 题面 BZOJ 洛谷 题解 随便写个高精度模拟一下就完了. #include<iostream> #include<cstd ...

  7. HGOI20181029模拟题解

    HGOI20181029模拟题解 /* sxn让我一定要谴责一下出题人和他的数据! */ problem: 给出十进制数a,b,然后令(R)10=(a)10*(b)10,给出c表示一个k进制数(1&l ...

  8. c++并发编程之线程的互斥与同步

    什么是线程的同步与互斥? 互斥:指在某一时刻指允许一个进程运行其中的程序片,具有排他性和唯一性. 对于线程A和线程B来讲,在同一时刻,只允许一个线程对临界资源进行操作,即当A进入临界区对资源操作时,B ...

  9. 71. Simplify Path(M)

    71. Simplify Path Given an absolute path for a file (Unix-style), simplify it. For example, path = & ...

  10. 78. Subsets(M) & 90. Subsets II(M) & 131. Palindrome Partitioning

    78. Subsets Given a set of distinct integers, nums, return all possible subsets. Note: The solution ...