国外设计网站 绿色的,photoshop在线工具,wordpress更换域名,wordpress进入不了后台文章目录 1 数据库的一些基础概念1.1 数据库和数据库管理系统1.2 关系模式和关系实例1.3 数据库模式和数据库实例 2 数据库组织形式2.1 数据采用文件的缺点2.2 使用数据库管理系统的 优点 3 关系型数据库特点4 三个层次的数据抽象Data Abstraction5 超键、候选码、主码、外码 1… 文章目录 1 数据库的一些基础概念1.1 数据库和数据库管理系统1.2 关系模式和关系实例1.3 数据库模式和数据库实例 2 数据库组织形式2.1 数据采用文件的缺点2.2 使用数据库管理系统的 优点 3 关系型数据库特点4 三个层次的数据抽象Data Abstraction5 超键、候选码、主码、外码 1 数据库的一些基础概念
1.1 数据库和数据库管理系统
A database-management system (DBMS) is a collection of interrelated data and a set of programs to access those data.
It is a powerful tool for managing large amount of data efficiently and allowing data to persist safely.
Database refers to a collection of data that is managed by a DBMS
数据库是一组相关数据的集合而数据库管理系统DBMS是管理、维护和操作这些数据的软件系统。简单来说数据库是数据的集合而DBMS是用来管理和操作这些数据的工具。
1.2 关系模式和关系实例
关系模式Relation Schema和关系实例Relation Instance是关系型数据库中的两个不同但相关的概念。
A relation schema (关系模式) consists of a list of attributes and their corresponding domains.It defines the structure of the table, but does not include any actual data.
关系模式Relation Schema是指关系型数据库中表格的结构包括表格的名称、列名、数据类型、主键和外键等。它定义了表格的结构但并不包含任何实际的数据。关系模式通常通过CREATE TABLE语句来定义。
A relation instance (关系实例) is a set of tuples over a relation schema
关系实例Relation Instance是指关系模式中表格中的具体数据也就是表格中的行和列。它是关系模式的一个具体实例包括表格中的所有数据。关系实例可以通过SELECT语句来检索和查询。
例如假设我们有一个关系模式为“学生Student”包括学生编号Student ID、姓名Name、年龄Age和性别Gender等列。那么关系实例就是表格中的具体数据如学生编号为001、姓名为张三、年龄为20岁、性别为男性等。
1.3 数据库模式和数据库实例
数据库模式Database Schema是数据库的结构图它描述了数据库中各个表、列、主键、外键等的结构和关系。也就是说数据库模式定义了数据库中数据的逻辑结构包括表格、关系、约束和索引等元素。它是一个静态概念不会发生变化除非进行数据库结构的修改。
Database schema (数据库模式) – is the logical structure of the database
数据库实例Database Instance是指在计算机内存中运行的数据库它是数据库在运行时的状态。也就是说数据库实例包含了数据库中所有数据的副本以及处理这些数据的进程和线程。每个数据库实例都有自己的内存空间和处理器资源可以独立地进行处理和管理。
Database instance (数据库实例) – is a snapshot of the data in the database at a given instant in time.
2 数据库组织形式
2.1 数据采用文件的缺点
1 获得数据很困难得为每一个潜在的程序写代码程序
Difficulty in accessing data
2 数据丢失或者不一致
Data redundancy and inconsistency
3 完整性问题
Integrity problem
4 并发访问或者操作到一半的时候可能会出现程序崩掉这时候数据库可能会把前面未完整执行的进行执行
Concurrent-access problem
5 安全访问问题
Security problem
6 操作原子性问题
Atomicity problem
2.2 使用数据库管理系统的 优点
主要是两方面
便于查询和修改数据
便于确定数据逻辑结构
支持大量数据
访问控制
原子性操作
即事务是原子的。原子性是指事务中的所有操作被视为一个单独、不可分割的操作要么全部执行成功要么全部失败回滚不会出现部分执行的情况。
这意味着如果一个事务包含多个操作如果其中任何一个操作失败整个事务就会回滚回到原始状态所有的操作都会取消。这种方式可以确保数据的一致性和完整性避免了数据损坏或错误的情况。
3 关系型数据库特点
数据以表格表的形式存储其中每个表包含行和列每个表有独一无二的名称表之间可以建立关系通过外键foreign key实现表之间的连接。数据库使用结构化查询语言SQL进行查询和操作。关系型数据库通常支持事务处理和数据完整性控制。
4 三个层次的数据抽象Data Abstraction
Logical levelusers can see all tables and how they are related
比如数据表的组织方式
Physical level: describe how data is stored in a file.
比如某一个内容占据多少字节等等
View level: users can see the tables within the scope of their requirements and permissions.
比如教师可以看到教师的数据表而学生只能看到学生的数据表
5 超键、候选码、主码、外码
超键
在关系型数据库中**超键Superkey**是能够唯一标识一个关系中元组的一组属性集合。简单来说超键是可以唯一区分关系模式中不同元组的一组属性。
超键具有以下特点
超键必须是唯一的即在关系模式中没有两个元组具有相同的超键值。超键可以包含一个或多个属性。超键可以是候选键Candidate Key的超集也可以是包含主键Primary Key的超键。
候选码
最小的超键可以有多个
主码
从候选码里选出来唯一的一个 主码是数据库表中的一个字段或一组字段用于唯一标识表中的每一行记录。
主码是数据库表中唯一标识记录的字段或字段集合每个表只能有一个主码。候选码也是具有唯一性的字段或字段集合但一个表可以有多个候选码其中一个通常会被选择为主码。主要区别在于主码是表的主要标识符而候选码是备选的唯一标识符。
写一个关系模式将主键用下划线画出来且一般在其他元素前
** **
写出他的关系模式
注意这里用 两个才能唯一区别building, room number同时画下划线
外码
参照关系和被参照关系是用来描述表之间关系的术语它们涉及到外码Foreign Key和主码Primary Key之间的联系。以下是它们的解释 参照关系Referencing Relationship 参照关系指的是包含外码Foreign Key的表该外码引用另一张表的主码Primary Key或候选码Candidate Key。在参照关系中外码字段存储了关联表的键值它用于确立两个表之间的关联。表示为表A包含一个外码字段该字段引用了表B的主码或候选码这时表A就与表B存在参照关系。 被参照关系Referenced Relationship 被参照关系指的是包含主码或候选码的表该表的键值被外码字段引用从而使其他表可以与它建立关联。在被参照关系中一个表的主码或候选码通常被其他表的外码引用这表明它在其他表中作为关联的目标。表示为表B的主码或候选码被表A的外码引用这时表B就与表A存在被参照关系。
例如考虑以下两个表Customers客户和Orders订单。Customers 表的 CustomerID 字段是主码而 Orders 表的 CustomerID 字段是外码。这种情况下
Customers 表是被参照关系表因为它的主码CustomerID被 Orders 表的外码字段CustomerID引用允许订单表与客户表建立关联以指示哪些客户下了哪些订单。Orders 表是参照关系表因为它包含了外码字段CustomerID该字段引用了客户表的主码CustomerID用于建立订单表与客户表之间的关联。
总之参照关系和被参照关系描述了表之间的关联外码与主码之间的关系非常重要它们有助于维护数据完整性并允许查询和检索相关数据
一个关系数据库由多个表组成每个表有自己独一无二的名字
一个表通常内概念有 属性元组分量 概念
属性的域domain属性允许的值的集合比如年龄这个属性允许的值是正整数
r 的所有属性的域都应该是原子的。什么原子的域的元素被认为是不可分割的单元