首页 > 数据库 >【数据库概论】第一章 数据库概论

【数据库概论】第一章 数据库概论

时间:2023-12-05 21:12:02浏览次数:40  
标签:数据库 实体 第一章 概论 数据 模型 数据模型 属性

1.1 数据库系统概述

1.1.1 数据库的四个基本概念

  1. 数据
  2. 数据库
  3. 数据库管理系统DBMS
  4. 数据库系统DBS

1.1.2 数据库的特点

  1. 数据结构化
  2. 数据的共享性高、冗余度低并且易扩充
  3. 数据独立性高
  4. 数据由数据库管理系统统一管理和控制

1.2 数据模型

1.1.1 数据模型

数据模型也是一种模型,他是对现实世界数据特征的抽象。也就是说数据模型是用来描述数据、组织数据和对数据进行操作的。数据模型是数据库系统的核心和基础。

1.2.1 两类数据模型

根据模型应用的不同目的,可以将模型划为两大类,它们属于两个不同的层次。第一类是概念模型,第二类是逻辑模型和物理模型。

  • 概念模型是按用户观点来对数据和信息建模,主要用于数据库设计。
  • 第二类中逻辑模型主要包括层次模型、网状模型、面向对象数据模型和对象关系模型等。第二类中的物理模型是对数据最底层的抽象,它描述数据在系统内的表示方式和存取方法,是面向计算机系统的。
    现实世界中客观对象的抽象过程

1.2.2 概念模型

  1. 实体(entity)
    客观存在并且可以相互区别的食物成为实体。比如一个职工、一个学生、一个部门等
  2. 属性(attribute)
    实体所具有的某一特性成为属性,一个实体可以由若干个属性来刻画,比如学生实体可以由学号、姓名、性别等属性构成。
  3. 码(key)
    唯一标识实体店属性集称为码,比如学号属性称为学生实体的码。
  4. 实体型(entity type)
    实体名以及其属性名集合来抽象和刻画同类实体称为实体,例如,学生(学号,姓名,性别,入学时间)就是一个实体型
  5. 实体集
    同一类型实体的集合称为实体集,例如全体学生就是一个实体集合。
  6. 联系
    实体之间的联系通常指不同实体集之间的联系,比如实体之间的联系有一对一、一对多、多对多等类型

1.2.3 数据模型的组成要素

数据模型是严格定义一组概念的集合,因此数据模型通常由数据结构、数据操作和数据的完整性约束条件三部分组成

  1. 数据结构
    数据结构描述数据库组成和对象时间的关系
  2. 数据操作
    数据操作是指对数据库中各种对象的实例允许执行的操作的集合,包括操作以及有关的操作规则。
  3. 数据的完整性约束条件
    数据的完整性约束条件是一组完整性规则。完整性规则是给定数据模型中数据及其联系所具有的制约和依存规则,用于限定数据模型的数据库状态以及状态变化,从而保证数据的正确、有效和相容。在这里描述的比较抽象,看不懂的也不用担心,后面有详细介绍,届时会比较通俗易懂

1.2.4 关系模型

关系模型是最重要的一种数据模型,关系数据库系统采用关系模型作为数据的组织方式。这也是我们研究的重点。
关系模型的数据结构
关系模型的数据结构

  • 关系(relation):一个关系对应一张表,例如图1.14
  • 元组(tuple):表中的一行就是一个元组
  • 属性(attribute):表中的一列就是一个属性,每个属性的名称称为属性名
  • 码(key):又称为码键,表中的某个可以唯一确定一个元组的属性组称之为码
  • 域(domain):域是一组具有相同数据类型的值的集合。属性的取址范围来自某个域。如人的性别取值范围为(男,女)
  • 分量:元素中的一个属性值

标签:数据库,实体,第一章,概论,数据,模型,数据模型,属性
From: https://www.cnblogs.com/cyra/p/17878153.html

相关文章

  • openGauss学习笔记-143 openGauss 数据库运维-例行维护-数据安全维护建议
    openGauss学习笔记-143openGauss数据库运维-例行维护-数据安全维护建议为保证openGauss数据库中的数据安全,避免丢失数据、非法访问数据等事故发生,请仔细阅读以下内容。143.1避免数据被丢失建议用户规划周期性的物理备份,且对备份文件进行可靠的保存。在系统发生严重错误的情况......
  • StackGres 数据库平台工程,使用 Citus + Patroni 创建生产级高可用分布式 PostgreSQL
    系列StackGres,可私有部署的云原生数据库平台工程StackGres 数据库平台工程功能介绍与快速上手StackGres1.6数据库平台工程集群配置管理(K8SPods/PostgreSQL/PgBouncer)StackGres1.6数据库平台工程,集群高可用(Patroni3管理)什么是ShardedCluster(分片集群)Sha......
  • 解读JetBrains 2023年开发者生态报告,MySQL仍是全球数据库顶流 | StoneDB数据库观察 #1
    :::hljs-center:::<br>:::hljs-right作者:宇亭:::<br>最近,全球知名的开发者工具公司JetBrains对外发布了《2023年开发者生态系统报告》,报告的具体内容,前几天已经有中文互联网的媒体解读了,由于我们是做数据库的,所以自然而然想要特别关注一下数据库的情况——结果在意料之......
  • 解读JetBrains 2023年开发者生态报告,MySQL仍是全球数据库顶流 | StoneDB数据库观察 #1
    作者:宇亭 ​最近,全球知名的开发者工具公司JetBrains对外发布了《2023年开发者生态系统报告》,报告的具体内容,前几天已经有中文互联网的媒体解读了,由于我们是做数据库的,所以自然而然想要特别关注一下数据库的情况——结果在意料之中,MySQL在全球范围内仍是最流行的数据库。当......
  • 【虹科干货】关于JSON数据库,你了解多少?
    如何理解JSON数据库?作为NoSQL数据库的一种类型,JSON数据库有哪些优势呢?JSON数据库如何运作,它为应用程序开发者带来了哪些价值呢?文章速览:什么是JSON什么是JSON数据库JSON数据库的显著优势关于JSON数据库的Q&A 一、什么是JSON?首先,我们得明确“JSON”的含义。开发人员在创......
  • 数据库的几种连表方式详解
    数据库主要有五种连表方式首先需要准备两张表: 图书表bookid   name  price  publish_id1西游记 3312红楼梦5613三国演义6624西厢记556     出版社表publishid   name    addr1北京出版社北京......
  • 【Python/数据库】SQLAlchemy基础操作
    一、SQLAlchemy——创建表#ORM#1.Class-Obj#2.创建数据库引擎#3.将所有的Class序列化为数据表#4.ORM操作-CRUD(增删改查操作的简称)1.创建一个class#create_table.pyfromsqlalchemy.ext.declarativeimportdeclarative_baseBase=declarative_base......
  • 【Python/数据库】SQLAlchemy一对多,多对多操作
    SQLAlchemy一对多操作1.创建多表#create_table_ForeginKey.pyfromsqlalchemy.ext.declarativeimportdeclarative_basefromsalalchemyimportColumn,INT,VARCHAR,ForeignKeyfromsqlalchemyimportcreate_engineBase=declarative_base()classStudent(Base)......
  • 奇迹Mu 删除MD5加密数据库语句!
    很多GM在自己都不知道的情况下,就给游戏加了MD5的加密,MD5加密通常都是32位的加密,在写程序的逻辑上,通常会进行好几次的循环加密,导致很多用户注册或是登陆的时候会显示错误,今天MU-GM给大家提供一个清除数据库MD5的SQL语句。ifexists(select*fromdbo.sysobjectswhereid=obje......
  • 使用mysqlbinlog恢复数据库(逆向或正向都可以)
    我确实喜欢写一些不一样的东西。如果我们在网上搜索“mysql恢复数据库”、“使用mysqlbinlog恢复数据库”、“mysql使用binlog恢复被删除的表”等,一般可以搜索到很多,但是仔细分析会发现,这许多的基本都在讲几件事:1、查看是否已开启在线日志,如果没有开启就开启2、查看日志文件位置3......