(科目三)数据库基础知识

1、基本概念

1.1 数据库

1、数据、信息和数据处理

  • 数据是指表达信息的某种物理符号;

  • 信息是对客观事物的反映,是为某一特定目的二提供的决策数据;

  • 数据处理是指将数据转换成信息的过程,是对各类型的数据进行收集、整理、存储、分类、加工、检索、维护、统计传播等一系列活动的总称。

2、数据库、数据库管理系统、数据库应用系统和数据库系统。

  • 数据库:是存储在计算机设备上、结构化、相互关联数据集合。(DB)
  • 数据库管理系统:为数据库的建立、使用和维护二配置的系统软件,数据库系统的核心。(DBMS)
  • 数据库应用系统:系统开发人员利用数据库系统资源开发出来的、面向某个具体应用的计算机软件系统.
  • 数据库系统:引进数据库技术的计算机系统,实现有组织、动态地存储大量相关数据,提供数据处理和信息资源共享的便利手段;由5个部分组成:硬件系统、数据库集合、数据库管理系统、以及相关软件、数据库管理员和用户。

1.2 数据库系统的结构

数据库系统在总体结构上一般是三级模式的结构特征,即外模式、模式和内模式,分别反映了看待数据库的三个角度。

  1. 外模式:也称子模式或用户模式,是数据库用户看见和使用的局部数据的逻辑结构和特征的描述。
  2. 模式:又称概念模式或逻辑模式,是数据库中全体数据的逻辑结构和特征的描述。
  3. 内模式:又叫做存储模式,是数据在数据库系统中的内部表示,即数据的物理结构和存储方式的描述。
  4. 三级模式之间的关系:数据库系统正在三级模式中提供了两次映像:外模式到模式的映像和模式到内模式的映像,而这两次映像就实现了数据库中数据两个层次的独立性,即逻辑独立性和物理独立性。

2、数据库技术的发展

数据处理的核心问题是数据管理。

数据管理技术的发展,经历了三个阶段:人工管理、文件系统管理、和数据库管理。

发展阶段主要特征
人工管理(1953-1965)1、数据与程序彼此依赖,自组数据分别对应一组程序。
2、不同应用程序之间不能共享数据,数据冗余量。
文件管理系统(1965-1970)1、数据与程序分开存储,相关数据组织称一种文件,由一个专门的文件不安利系统实施统一管理,应用程序通过文件管理系统对数据文件中的数据进行加工处理;
2、数据与数据之间没有有机的联系,数据的通用性较差,冗余量大;
3、数据文件仍高度依赖于对应的程序,同一数据文件很难被不同的应用程序共享。
数据库管理(1970-今)1、对所有数据实行统一管理,供不同用户共享;
2、数据文件之间可以建立关联关系,数据冗余性大大减少;
3、数据与应用程序之间完全独立,减少了应用程序开发和维护的代价。

3、数据库技术的实现

3.1 三个世界的转换

1、现实世界

数据库管理的对象存在于现实世界中,现实世界中的事物存在着各种各样的联系。这种联系是客观的,是由事物本身的性质决定的。

2、概念世界

概念世界也叫信息世界,是现实世界在人们头脑中的反映,是对客观事物及其联系的一种抽象描述。

现实世界到概念世界是通过概念模型来表达的。

3、数据世界

存入计算机系统中的数据是将概念世界的事物数据化的结果。为准确地反映视为本身及事物之间的各种联系,数据库中的数据一定存在一个结构,数据模型可用来准确描述这种结构。

在实践数据库管理,也就是三个世界的转化过程中,概念模型和数据模型是实现世界数据化的桥梁,是对实现现实世界数据化的桥梁,是对现实世界中的事物进行抽象的工具。

3.2数据模型

数据模型是数据库管理系统用来表示实体和实体间联系额方法,反映了数据之间存在的整体逻辑关系,其要素包括:数据结构、数据操作、和数据约束条件。数据模型主要包括层析模型、网状模型和关系模型等。

1、层次模型:用树型结构表示实体及其之间的联系。在这种模型种,记录类型位结点,由父结点和子节点构成。除根节点以外,任何结点只有一个父节点。

2、网状模型::用网状结构来表示实体及其之间的联系。在这种模型种记录类型位结点,由系欸但那及结点间的相互关联构成;允许结点由一个以上的父节点,或一个以上的结点没有父节点。

3、关系模型:关系模型使用二位表格结构表示实体及其之间的联系。关系模型以关系舒徐理论位基础,一个二维表就是一个关系,不仅能描述实体本身,还能反应实体之间的联系。

3.3 基本概念

实体:指客观存在且相互区别的事务。

属性:指实体所具有的某一特性。

实体型:用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。

实体集:同型实体的集合。属性的结合表示一个具体的实体;属性的集合表示一种实体型,同类型的实体的集合位实体集。

联系:实体之间的对应关系,它反映现实世界事物之间的关联。

实体联系的类型由:一对一、一对多、多对多。

3.4 关系型数据库

一、基本概念

关系型数据库:由关系模型构成的数据库;

关系模型:对关系的描述,格式为:关系名(属性1,属性名2,……);

关系:一个关系即一张二维表,每个关系有一个关系名,比如在Visual Foxpro中,一个关系存储为一个文件,即:表(.dbf);

关系的特点:规范化、属性和元组的特性:值异、次序不重要;

元组:一个关系(表)中,水平方向的行;

属性:二维表中垂直方向的列。

域:属性的取值范围;

主关键字:属性或属性的结合,关键字的值能唯一标识一个元组;

外部关键字:表中的一个字段不是本表的主关键字或候选关键字,而是另一个表的主关键字,该字段成为外部关键字。

3.5 关系运算

关系的基本运算由两类:一类是传统的几何运算(并、交、差等),另一类是专门的关系运算(选择、投影、连接)。

  • 选择:找出水平方向的
  • 投影:找出垂直方向的
  • 连接:对应链接。可以连接表明两个关系中都有相同的属性。取掉相同属性列,叫自然连接。

3.6数据完整性

数据完整性格是指保证数据正确的特性。

  1. 实体完整性:保证表中记录唯一的特性,即在一个表中不允许有重复的记录,比如,在Visual Foxpro中通过主关键字(主索引)或候选关键字(候选索引)来确保实体完整性。
  2. 域完整性:数据表中字段属性的约束,常指数据的有效性,它包括字段值域、字段的烈性及字段的有效规则等约束。
  3. 参照完整性:厎关系数据库中建立永久关联关系的数据表间数据参照引用的约束,也即当插入、删除和更新一个表中的数据时,通过参照引用相互关联的另一个表中的的数据,连检查相关联的表的数据操作是否准确

4、数据库设计

4.1 数据库设计方法

1、手工试凑法

2、规范设计法:具体步骤:需求分析、概念设计、逻辑设计和物理设计等。

4.2 数据库设计步骤

1、需求分析:这简短的工作是超能股份调查研究,了解用户需求。

2、概念结构设计。概念结构是整个系统的信息结构,它是现实世界的真实反映,包括实体与实体之间的关系。

3、逻辑结构设计。这个阶段的任务是将概念结构转换成与所选中DBMS所支持的数据模型相符合的过程。

4、物理机构设计。这个阶段的任务主要视为了一个给定的逻辑数据模型选取一个合适的物理结构,并对物理结构进行评价。

5、编码测试。进入这个阶段后,就要按照逻辑设计和物理设计的结果利用DBMS的数据定义语言把数据库描述出来。

6、运行维护。试运行的主要工作是检查应用程序的功能,测量系统的性能指标,在物理设计阶段所做的评估是否正确,此时可以得到检验。

4.3 数据库设计规范

1、范式

规范化是数据库设计中的一个重要过程,可以通过它来提出数据库中冗余的数据。

EF-Codd子1977奶奶提出规范化理论,他和后来的研究人员为数据库定义了五中规范化模式,简称范式。

2、规范化的优点

  • 规范化大大减少了数据冗余
  • 罚金了数据库整体组织
  • 增强了数据的一致性
  • 增加了数据库设计的灵活性

3、常用范式

第一范式:规定表的每个列的值都是不可分的简单数据项。在任何一个数据库中工,第一范式都是一个最基本的要求。

第二范式:有两项要求,所有表必须符合第一范式:表中每一个非主键列完全函数依赖于主键(关键字)。

第三范式:有两项要求,所有表必须满足第二范式:表中每一个非主键对主键都不存在传递依赖,而应是直接依赖。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/270016.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 刷题 [C++] 第98题.验证二叉搜索树

题目描述 给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: 节点的左子树只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。 题目分析 由题…

花王如何让护舒宝退出日本市场?|日本极致产品力

摘要:《极致产品力》日本深度研学是一个顾问式课程,可以帮助企业找产品、找方向、找方法,在日本终端市场考察中洞悉热销产品背后的成功逻辑,了解最新最前沿的产品趋势和机会。结合日本消费趋势中国转化的众多经验,从品牌、包装、卖点、技术和生产工艺等多…

面试经典150题【51-60】

文章目录 面试经典150题【51-60】71.简化路径155.最小栈150.逆波兰表达式求值224.基本计算器141.环形链表2.两数相加21.合并两个有序链表138.随机链表的复制19.删除链表的倒数第N个节点82.删除链表中的重复元素II 面试经典150题【51-60】 71.简化路径 先用split(“/”)分开。然…

Ubuntu进入python时报错:找不到命令 “python”,“python3” 命令来自 Debian 软件包 python3

一、错误描述 二、解决办法 进入”/usr/bin”目录下,查看/usr/bin目录中所有与python相关的文件和链接: cd /usr/bin ls -l | grep python 可以看到Python3指向的是Python3.10,而并无指向python3的软连接 只需要在python与python3之间手动…

第五十天| 123.买卖股票的最佳时机III、188.买卖股票的最佳时机IV

第四十八天| 121. 买卖股票的最佳时机、122.买卖股票的最佳时机II-CSDN博客 Leetcode 123.买卖股票的最佳时机III 题目链接:123 买卖股票的最佳时机III 题干:给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来…

centos上部署k8s

环境准备 四台Linux服务器 主机名 IP 角色 k8s-master-94 192.168.0.94 master k8s-node1-95 192.168.0.95 node1 k8s-node2-96 192.168.0.96 node2 habor 192.168.0.77 镜像仓库 三台机器均执行以下命令: 查看centos版本 [rootlocalhost Work]# cat /…

案例介绍:信息抽取技术在汽车销售与分销策略中的应用与实践

一、引言 在当今竞争激烈的汽车制造业中,成功的销售策略、市场营销和分销网络的构建是确保品牌立足市场的关键。作为一名经验丰富的项目经理,我曾领导一个专注于汽车销售和分销的项目,该项目深入挖掘市场数据,运用先进的信息抽取…

2024 DataGrip 激活,分享几个DataGrip 激活的方案

大家好,欢迎来到金榜探云手! DataGrip 公司简介 JetBrains 是一家专注于开发工具的软件公司,总部位于捷克。他们以提供强大的集成开发环境(IDE)而闻名,如 IntelliJ IDEA、PyCharm、和 WebStorm等。这些工…

Android Compose - PlainTooltipBox(已废弃)的替代方案

Android Compose - PlainTooltipBox 的替代方案 TooltipBox(positionProvider TooltipDefaults.rememberPlainTooltipPositionProvider(),tooltip {PlainTooltip {Text(/* tooltip content */)}},state rememberTooltipState(), ) {// tooltip anchorIconButton(onClick {…

齐护ESP32手柄可Arduino编程蓝牙无线游戏手柄Mixly Scratch创客竞赛编程手柄

关于齐护蓝牙手柄 齐护蓝牙手柄,内置蓝牙,专用蓝牙配对码稳定应用,自动无动作后省电休眠,内置锂电池,陀螺仪,双遥杆(带按键),及15个多功能按键,人体工艺设计外…

【vue.js】文档解读【day 1】 | 模板语法1

如果阅读有疑问的话,欢迎评论或私信!! 本人会很热心的阐述自己的想法!谢谢!!! 文章目录 模板语法前言文本插值原始HTML属性Attribute绑定动态绑定多个值 模板语法 前言 Vue 使用一种基于 HTML…

【Mysql】InnoDB 中的聚簇索引、二级索引、联合索引

一、聚簇索引 其实之前内容中介绍的 B 树就是聚簇索引。 这种索引不需要我们显示地使用 INDEX 语句去创建,InnoDB 引擎会自动创建。另外,在 InnoDB 引擎中,聚簇索引就是数据的存储方式。 它有 2 个特点: 特点 1 使用记录主键…

WordPress建站入门教程:phpMyAdmin4.8.5出现Fatal error: Unparenthesized错误怎么办?

我们在本地电脑使用小皮面板phpstudy安装phpMyAdmin4.8.5成功后,但是点击【管理】功能打开时却出现如下错误: Fatal error: Unparenthesized a ? b : c ? d : e is not supported. Use either (a ? b : c) ? d : e or a ? b : (c ? d : e) in D:\…

海格里斯HEGERLS助力服装业领域数智化转型 配备7000个托盘位 仓库容量增超110%

近年来,用工荒成为服装制造行业的一大痛点。对此,整个生产体系就要不断地向智能化、自动化生产设备进行转型,甚至在研发设计上都要面向自动化做一些新一代服装制造业的开发。 作为较早入局物流赛道的河北沃克,目前已构建起以AI赋能…

javascript中对包含关系判断介绍

本文将为您详细讲解 JavaScript 中对包含关系的判断,包括数组、字符串等,并提供相应的代码例子。 1. 数组包含关系判断 在 JavaScript 中,数组包含关系判断通常使用 Array.prototype.includes() 方法。这个方法返回一个布尔值,表示…

什么是云游戏?云游戏平台可以运行3A游戏吗?

对于不熟悉游戏行业的人来说,面对云游戏可能会有一个疑问——除了单机游戏,现在所有游戏不都是联网玩吗?云游戏和网络游戏有什么区别? 实际上,云游戏和传统网络游戏有着本质的不同。 传统网络游戏需要玩家先下载并在本…

python网络爬虫教程笔记(1)

系列文章目录 文章目录 系列文章目录前言一、爬虫入门1.爬虫是什么?2.爬虫工作原理3.爬虫基本原理4.工作流程5.HTTP请求6.HTTP响应7.HTTP原理:证书传递、验证和数据加密、解密过程解析8.Urllib.request库的使用9.TCP3次握手,4次挥手过程 总结…

Oracle 的同义词(Synonym) 作用

Oracle 同义词(Synonym) 是数据库对象的一个别名,Oracle 可以为表、视图、序列、过程、函数、程序包等指定一个别名。同义词有两种类型: 私有同义词:拥有 CREATE SYNONYM 权限的用户(包括非管理员用户)即可创建私有同义词,创建的…

【CSP试题回顾】202203-1-未初始化警告

CSP-202203-1-未初始化警告 关键点总结:set 在C中,set 是一个基于平衡二叉树(通常是红黑树)的关联容器,它包含了一系列唯一的元素,并且这些元素会自动按照特定的排序准则进行排序。以下是 set 中常用的一些…

openGauss环境搭建 | 新手指南

一、搭建准备 openGauss开发需要使用linux环境,先下载远程连接工具Xshell/MobaXterm 。 1. 使用工具连接远程linux服务器,使用root账号远程登录,创建个人账号。 useradd -d /home/xxx -m xxx 2. 设置密码。 passwd xxx 3. 切换到个人账…