数据库基础知识小结

article/2025/10/14 21:46:20

数据库基础知识小结

数据库(Database)是存储在计算机内有结构的数据的集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为多个用户共享。

数据库管理系统(Database Management System,简称DBMS)是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。

数据库系统(Database System):由数据库、数据库管理系统以及其开发工具、应用系统、数据库管理员构成。其中,数据库系统软件包括数据库管理系统、开发工具和数据库应用系统。

一个完整的数据库系统一般由数据库、操作系统、数据库管理系统、应用开发工具、应用系统、数据库管理员和用户组成。

关系数据库(Relational Database,RDB):目前应用最广泛的数据库。

关系(Relation)是笛卡尔积的有限子集。是若干元组的集合,形象地说是一个表(table)。

每一行(row)对应一个元组(tuple),是无序的(unordered)即不讲循序;列(column)也是无序的的,每一列的值(value)来自一个域(Domain,一组具有相同数据类型的值的集合)。

关系具有以下的性质:

列的同质性:每一列中的分量是同一类型的数据,来自同一个域。

列名唯一性:每一列具有不同的属性名,但不同列的值可以来自同一个域。

元组相异性:关系中任意两个元组的候选键不能相同。

行的无序性:行的次序可以互换。

列的无序性:列的次序可以互换。

分量原子性:分量值是原子的,即每一个分量都必须是不可分的数据项。

关系模型(Relational model)关系模型是指用二维表的形式表示实体和实体间联系的数据模型。关系模型中无论是实体还是实体间的联系均由单一的结构类型——关系来表示。在实际的关系数据库中的关系也称表。

关系模式(Relation Schema)是对关系的描述。关系的描述称为关系模式(Relation Schema)它可以形式化地表示为:

R(U,D,dom,F)

其中R为关系名,U为组成该关系的属性名集合,D为属性组U中属性所来自的域,dom为属性向域的映象集合,F为属性间数据的依赖关系集合。

通常简记为:

R(U)或R(A1,A2,…,An)

其中R为关系名,U为属性名集合,A1,A2,…,An为各属性名。关系是关系模式在某一时刻的状态或内容。关系模式是静态的、稳定的,而关系是动态的、 随时间不断变化的,因为关系操作在不断地更新着数据库中的数据。

关于数据库系统模式(schema)和模型(Model)详见https://blog.csdn.net/cnds123/article/details/46678367

候选键(Candidate key) 若关系中某一属性组的值能唯一地标识一个元组,则称该属性组为候选键。

候选键键中的诸属性称为主属性(Prime attribute),不包含在任何候选键中的属性称为非主属性(Non-prime attribute)或非键属性((Non-key attribute)。 在最简单的情况下,候选键只包含一个属性,在最极端的情况下,关系模式的所有属性 组成这个关系模式的候选键,称为全键(All-key)。

主键(Primary key) 在一个关系中有多个候选键,从中选定一个作为主键。

关系是关系模式在某一时刻的状态或内容。关系模式是静态的、稳定的,而关系是动态的、 随时间不断变化的,因为关系操作在不断地更新着数据库中的数据

外键(Foreign Key):关系R中的一个属性组,它不是R的候选键,但它与另一个关系S的候选键相对应,则称这个属性组为R的外键(外码)。关系R称为参照关系(参照表、从表),关系S称为被参照关系(被参照表、主表)。

外键是指一个表(从表)中的一列或列组合,它虽不是该表的主键,但却是另一个表(主表)的主键。通过外键约束可以为相关联的两个表建立联系,实现数据的引用完整性,维护两表之间数据的一致性关系。

特别说明:键也有人称为码(key:键,码)。学习数据库知识时,经常遇到大量可能令初学者疑惑的术语,尽早了解可能更好的减少学习过程中的困惑误解。有关详情可见

https://blog.csdn.net/cnds123/article/details/39827049

 规范化

关系模型要求关系必须是规范化(normalization)的,规范化要求关系必须满足一定的规 范条件,而在规范条件中最基本的一条是每一个分量必须是不可分的数据项。规范化的关系简 称为范式(Normal Form)。

关于规范化详见 https://blog.csdn.net/cnds123/article/details/106450695

数据库中的E-R图

E-R(Entity-Relationship实体-关系)图,用于和项目团队的其他成员及客户沟通,讨论数据库设计是否满足客户的业务和数据处理需求,主要由一些含有特殊含义的图形符号构成。

 其中:

1、实体:指现实世界中具有区分其他事物的特征或属性并与其他事物有联系事物。

     实体一般是名词,对应表中的一行数据

2、属性:实体的特征

  属性对应表中的列

3、联系:指两个或多个实体之间的关联关系

  实体用矩形表示,一般是名词

  属性用椭圆形表示,一般也是名词

  联系用菱形表示,一般是动词

4、映射基数:表示通过联系与该实体关联的其他实体的个数。

对于实体集X与Y之间的关系有以下三个:一对一、一对多、多对多。

提示:relationship和relation通常都翻译为关系,但在数据库中两者含义不同。relationship[关系;联系;关联],在数据库中指不同表之间的数据彼此联系的方法。数据库表之间的表之间的relationship有:一对一、一对多、多对多。relation[关系],在数据库指表,从本质上说,关系是一个包含行和列的二维表或数组。应根据语境区别理解。

数据库设计

数据库设计的基本步骤/阶段

☆需求分析:通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求。

☆概念结构设计:通过对用户需求进行综合、归纳与抽象,形成一个独立于具体数据库管理系统的概念模型。如采用E-R模型进行设计,画E-R图。

☆逻辑结构设计:将概念结构转换为某个数据库管理系统所支持的数据模型,并对其进行优化。通过将E-R图转换成表,实现从E-R模型到关系模型的转换。

☆物理结构设计:为逻辑数据结构选取一个最适合应用环境的物理结构,包括存储结构和存取方法。

☆数据库实施:根据逻辑设计和物理设计的结果构建数据库,编写与调试应用程序,组织数据入库并进行试运行。

☆数据库运行和维护:经过试运行后即可投入正式运行,在运行过程中必须不断对其进行评估、调整与修改。

需求分析和概念设计独立于任何数据库管理系统;逻辑设计和物理设计与选用的数据库管理系统密切相关。

关于数据库设计详见 https://blog.csdn.net/qq_42192693/article/details/109720940

关系模型中关系的完整性约束

关系模型中三类完整性约束:

1 实体完整性(Entity Integrity)

2 参照完整性(Referential Integrity)

3 用户定义的完整性(User-defined Integrity)也有人称为域完整性(Domain Integrity)

数据库中的域(Domain):属性(也称为数据表的列、字段)的取值范围,如性别的男女。实际上,数据表中字段(列)的数据类型也是一种域约束。

关于关系模型中关系的完整性约束 详见 https://blog.csdn.net/cnds123/article/details/114336832

关系数据库标准语言SQL的组成

 (1)DDL(Data Definition Language,数据定义语言):创建、删除或修改数据库以及数据库中的表等对象。

    ①CREATE:创建数据库和表等对象

    ②DROP:删除数据库和表等对象

    ③ALTER:修改数据库和表等对象

(2)DML(Data Manipulation Language,数据操作语言):查询或修改表中的记录。

    ①SELECT:查询表中的数据

    ②INSERT:向表中插入数据

    ③UPDATE:修改表中的数据

    ④DELETE:删除表中的数据

(3)DCL(Data Control Language,数据控制语言):确认或取消对数据库中的数据变更的执行操作,以及对用户的操作数据库中的对象权限进行设定。

    ①COMMIT:确认对数据库中的数据进行的变更

    ②ROLLBACK:取消对数据库中的数据进行的变更

    ③GRANT:赋予用户的操作权限

④REVOKE:取消用户的操作权限

SQL 语句书写规范:

①序号以分号(;)结尾;

②大小写不敏感,不区分关键字的大小写,但有人建议关键字大写;【注意】插入到表中的数据是区分大小写的,如“HI”、“Hi”和“hi”都不同。

③字符串、日期:用单引号括起来('),如'Hello','2021-09-24'。

数字:直接书写,不用加单引号,如:50。

数据库事务(transactional)拥有以下四个特性,习惯上被称之为ACID特性。

原子性(Atomicity):事务作为一个整体被执行,包含在其中的对数据库的操作要么全部被执行,要么都不执行。

一致性(Consistency):事务应确保数据库的状态从一个一致状态转变为另一个一致状态。一致状态的含义是数据库中的数据应满足完整性约束。

隔离性(Isolation):多个事务并发执行时,一个事务的执行不应影响其他事务的执行。

持久性(Durability):已被提交的事务对数据库的修改应该永久保存在数据库中。

SQL国际标准使用START TRANSACTION开始一个事务(也可以用方言命令BEGIN)。COMMIT语句使事务成功完成。ROLLBACK语句结束事务,放弃从BEGIN TRANSACTION开始的一切变更。在启动事务后,数据库记录或对象会被锁定, 只读,或读写。然后才可以进行读写操作。一旦事务完全完成,变化就会被原子性地提交或回滚,这样在事务结束时就不会出现不一致的情况。

关于数据库事务的概念及其实现原理 可详见 https://www.cnblogs.com/takumicx/p/9998844.html


http://chatgpt.dhexx.cn/article/2Vsnlug5.shtml

相关文章

Mysql 数据库(二)——数据库基础

文章目录 一、SQL 语句分类1.DQL(数据查询语言)2.DML(数据操纵语言)3.DDL(数据定义语言)4.DCL(数据控制语言)5.TCL(事务处理语言) 二、数据库的分类1.关系型数…

达梦数据库基础-安装篇(Linux)

目录 前言 安装前准备 安装银河麒麟V10 SSH工具 环境配置 配置系统账户 获取达梦安装包 创建安装目录 ​编辑 安装指引 前言 近来在项目上接触的达梦数据库产品越来越多,不过之前接触,也仅仅是在做系统开发的时候,连上数据库后就开始…

数据库基础:基本概念

数据库、数据管理和数据管理系统 数据管理,是指对数据进行分类、组织、编码、存储、检索和维护。 数据库,存储数据的容器。 数据管理系统,DBMS(Database Management System),是管理数据库的软件。数据库管理系统是数据库系统的…

GaussDB高斯数据库(数据库基础知识)

数据库管理工作就是对数据库管理系统进行管理和维护的工作。 核心目标:稳定性,安全性,数据一致性,系统的高性能 数据库对象: 制定命名规范 灾难恢复: 恢复时间目标(RTO)&#xf…

数据库基础学习(思维导图)

在复习数据库时画的一些思维导图,自己觉得还不错,发出来希望帮助大家复习。 如有问题,,,欢迎指正!! 个人网站原文链接!!! 主要教材:数据库系统教程(第三版,施伯乐) 辅助教材:数据库系统概论(第五版,王珊) 其他参考:数据库系统教程习题解答与实验指导(…

一、数据库基础

文章目录 一、数据库基础知识和基本概念1、数据库基础知识2、数据库基本述语3、数据库系统的组成4、主流数据库 二、SQLServer 2012(1)服务器名称(2)身份验证(3)如何开启SQL Server服务?&#x…

MySQL数据库基础命令

1.连接数据库 在目录下输入cmd 输入命令: mysql -h 127.0.0.1 -u root -p 输入密码进入数据库 2.显示系统所有数据库名称 输入命令: show database; 3.新建数据库oo 命令: create database oo; 建成后查看: 4.使…

MySQL数据库基础

文章目录 1.数据库的操作1.1显示当前的数据库1.2创建数据库1.3使用数据库(选中数据库)1.4删除数据库 2.常用的数据类型2.1数值类型2.2字符串类型2.3日期类型 3表的操作3.1创建表3.2查看表结构3.3显示表3.4删除表 1.数据库的操作 1.1显示当前的数据库 s…

数据库基础语句

1.SQL DML 和 DDL 可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL)。 1.1 查询和更新指令构成了 SQL 的 DML 部分: SELECT - 从数据库表中获取数据 UPDATE - 更新数据库表中的数据 DELETE - 从数据库表中删除数据 INSERT INTO - 向…

数据库基础命令

目录 环境 1、连接数据库 2、显示系统中所有数据库 3、新建数据库 4、使用数据库创建表 5、添加数据 6、删除数据 7、修改数据 8、查询数据 9、order by用法 10、limit用法 11、union select用法 12、union select 结合 information_schema数据库 环境 phpstudy20…

数据库基础(超详细版)

目录 简介: 三大范式: sql语句分类: DDL操作数据库: DML操作: DCL DQL 模糊查询 字段控制查询 排序 聚合函数 分组查询 HAVING子句 limit关键字和分页查询 简介: 数据库(DataBase&a…

Ubuntu升级后DNS不好用

服务器Ubuntu16升级到Ubuntu18后,DNS不好用,解决办法。 我使用的是三丰云的免费云服务器。这个服务器用了有一段时间了,挺稳定的。暂时还没有出现过问题。感兴趣的可以试一试。 感觉虽然系统升级到了Ubuntu18,但是DNS的配置方法并…

常用的免费好用的DNS有哪些?

阿酷TONY 原创文章 关键词:免费dns、百度dns、阿里dns、114 dns 、Google DNS 2019-1-24 DNS(Domain Name Server,域名服务器)是进行域名(domain name)和与之相对应的IP地址 (IP address)转换的服务器。DNS中保存了一张域名(doma…

DNS

1.介绍: 域名系统 (Domain Name System),是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数据串。 DNS由解析器以及域名…

优秀公共DNS服务器推荐

选择最优秀的 DNS 服务器,不仅为你提供安全的上网环境,而且还能加速你的网速。目前互联网上提供了大量匿名、公共、免费的 DNS 服务器,因此挑选适合自己的最佳选项可能并不简单。国外科技媒体 BGR 分享了一些主流的 DNS 服务器并提供了一些选…

国内外优秀公共DNS测评及推荐

DNS在平时上网中扮演重要角色,如果不注意DNS的话,可能会导致网速慢、弹窗广告、网址打不开、打开不是自己想要的网站、劫持等一系列问题。针对DNS的问题,今天我们就来总结一下,看看哪个DNS服务器最好用!注意&#xff1…

最好用的DNS地址

2019独角兽企业重金招聘Python工程师标准>>> DNS是 Domain Name System 的缩写,它是由解析器和域名服务器组成的。简单说就是通过DNS服务,将域名信息翻译成IP地址然后连通。 今天将目前国内主流的公共DNS地址、全国各地中国电信和联通DNS服务…

成都最稳定的dns服务器地址,成都首选DNS服务器地址

成都首选DNS服务器地址 内容精选 换一换 华为云帮助中心,为用户提供产品简介、价格说明、购买指南、用户指南、API参考、最佳实践、常见问题、视频帮助等技术文档,帮助您快速上手使用华为云服务。 系统提示无法下载脚本或使用Linux系统方式二安装Agent时失败。原因1:DNS无法…

dns服务器的设置

1.为什么设置本机的dns服务器 计算机在访问网站的时候一般通过ip地址访问,但是ip不是很好记,于是出现了域名,而dns服务器就是将域名与ip关联起来。 所以在每次通过域名第一次访问任何一个网站的时候都是要先询问dns服务器该域名对应的ip地址…

监控系统首选DNS服务器,监控windows DNS服务器

监控windows DNS服务器 内容精选 换一换 主机监控分为基础监控、操作系统监控、进程监控。基础监控:ECS/BMS自动上报的监控指标。操作系统监控:通过在ECS或BMS中安装Agent插件,为用户提供服务器的系统级、主动式、细颗粒度监控服务。进程监控…