数据库原理与应用(SQL Server)笔记 前言 数据库基本概念

目录

  • 一、数据(Data)
  • 二、数据库(DB)
  • 三、数据库管理系统(DBMS)
  • 四、数据库系统(DBS)
  • 五、数据库系统结构
  • 六、独立性原则
  • 七、数据模型

一、数据(Data)

数据(Data)是事物信息的符号表示,可以是数字、文字、图像、音视频等。例如,下表Employee中,每个员工所记录的数据有工号、姓名、性别、出生日期、职务以及部门编号。
在这里插入图片描述

二、数据库(DB)

数据库是按照特定的组织存储在计算机内的数据集合,在数据库中存储的内容是数据以及数据之间的联系,数据库具有以下特点:
(1)具有较小的数据冗余度;
(2)有较高的独立性;
(3)数据是集成的、共享的。

三、数据库管理系统(DBMS)

数据库管理系统是位于用户和操作系统之间的数据管理软件,它确保数据的准确性、安全性和完整性,其主要功能有数据定义、数据操纵、数据控制以及数据库建立维护。

四、数据库系统(DBS)

数据管理技术的发展历程可以大致划分为三个阶段,分别是人工管理阶段、文件系统阶段以及数据库系统阶段,这三个阶段的发展以数据存储冗余不断减小、数据独立性不断增强、数据操作更加方便和简单为标志。另外,随着技术的不断进步和应用需求的推动,数据管理技术也在持续发展和完善。

数据库系统(DBS)由数据库、操作系统、数据库管理系统(DBMS)、用户、应用程序以及数据库管理员(DBA),其中数据库管理员的工作是保证数据库系统的正常运维。

数据库DBS
数据DB
数据库管理系统DBMS
数据库管理员DBA
...

另外,数据库系统可分为客户-服务器模式(C/S)和三层客户-服务器模式(B/S)。

客户-服务器模式(Client / Server),C/S模式
三层客户-服务器模式(Browser/Server),B/S模式

C/S模式通常适用于专业、小范围的网络环境中,适用于局域网,由于用户群较固定所以安全性高,但安装维护复杂;而B/S模式适用于广域网,安装维护简单且适用性强,但安全性稍低。

五、数据库系统结构

数据库系统的结构由三级模式组成,包括外模式(用户模式)、模式(逻辑模式)和内模式(存储模式)。模式描述的是数据的全局逻辑结构,外模式描述的是数据的局部逻辑结构,内模式描述的是物理存储结构。三层模式的划分有利于保持数据库的数据独立性。
在这里插入图片描述
其中,外模式是用户级,位于三层模式的最外层,一个数据库可以有多个外模式,但一个应用程序只能使用一个外模式;一个数据库只有一个模式和内模式,模式是概念级,是所有用户的全局视图,内模式是物理级,是三层模式的物理级,是数据在数据库内的表示方式。

六、独立性原则

数据库管理系统中提供了三级模式之间的二级映像,分别是外模式/模式映射和模式/内模式映射,两者对应数据的逻辑独立性和数据的物理独立性两个独立性原则,主要涉及数据的逻辑结构和物理结构的变化对应用程序的影响变化,即数据的逻辑独立性和物理独立性确保了数据库结构的变化不会对应用程序产生影响,如下:
(1)数据的逻辑独立性
当总体逻辑结构改变,例如改变数据之间关系等,这种情况下由于应用程序与数据的逻辑结构是相互独立的,且是根据数据的外模式编写的,所以应用程序不会改变,保证了数据与程序之间的逻辑独立性。
(2)数据的物理独立性
当物理结构改变,例如存取方式改变、存储设备的更换等,这种情况下由于保数据的存储和访问方式与应用程序相互独立,所以应用程序不会改变,保证了数据与程序之间的物理独立性。

七、数据模型

数据模型是数据库系统(DBS)的核心和基础,一般由数据结构、数据操作以及数据完整性约束三部分组成。数据结构是静态特征,数据操作是动态特征,数据完整性约束是一组规则集合。

常用的数据模型有层次模型(树状)、网状模型(网状)、关系模型(关系)、半结构化数据模型等。数据库系统中最常用的模型是关系模型,其通过记录组或数据表的形式来组织数据。

​​在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Mybatis 基础】增删改查(@Insert, @Delete, @Update, @Select)

Mybatis Insert Delete Update Select Mybatis用法基础操作 - 删除delete 传参SpringbootMybatisCrudApplicationTests 测试类删除预编译SQL 基础操作 - 插入Insert 插入SpringbootMybatisCrudApplicationTests 测试类插入对象主键返回 基础操作 - 更新UPDATE 更新SpringbootMy…

Spring框架介绍及详细使用

前言 本篇文章将会对spring框架做出一个比较详细的讲解,并且每个知识点基本都会有例子演示,详细记录下了我在学习Spring时所了解到全部知识点。 在了解是什么spring之前,我们要先知道spring框架在开发时,服务器端采用三层架构的方…

【Java】LinkedList vs. ArrayList:Java中的数据结构选择

人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 目录 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌…

I2C系列(三):软件模拟I2C读写24C02

一.目标 PC 端的串口调试软件通过 RS-485 与单片机通信,控制单片机利用软件模拟 I2C 总线对 EEPROM(24C02) 进行任意读写。 二.硬件简述 2.1 24C02硬件参数 24C02器件地址为0x50,存储容量为256字节,存储单元地址位数…

HarmonyOS网格布局:List组件和Grid组件的使用

简介 在我们常用的手机应用中,经常会见到一些数据列表,如设置页面、通讯录、商品列表等。下图中两个页面都包含列表,“首页”页面中包含两个网格布局,“商城”页面中包含一个商品列表。 上图中的列表中都包含一系列相同宽度的列表…

【双指针】Leetcode 查找总价格为目标值的两个商品

题目解析 LCR 179. 查找总价格为目标值的两个商品 本题很友好&#xff0c;只需要返回任意一个 算法讲解 这道题很显然就是使用对撞双指针&#xff0c;一个从左边&#xff0c;一个从右边&#xff0c;两边进行和target比较来移动 代码编写 class Solution { public:vector<…

docker 搜索镜像命令

docker 搜索镜像命令 命令格式 docker search 关键字 如&#xff1a;docker centos 结果 result :

机器学习基础——模型评估与选择(部分)

目录 一、前言&#xff1a;误差与拟合 &#xff08;一&#xff09;经验误差 &#xff08;二&#xff09;过拟合、欠拟合 二、评估方法 &#xff08;一&#xff09;评估总体的思路 &#xff08;二&#xff09;如何划分训练集和测试集 1.留出法 2.k折交叉验证 3.自助法 …

灵途科技助力家电智能创新

从智能家电到个护健康&#xff0c;科技无时无刻不在刷新我们对智慧生活的认知&#xff0c;我们也从未像今天这样近距离贴近智慧生活的朴素本质——传感技术。灵途科技专注光电感知技术&#xff0c;持续为智能家电客户提供成熟的全方位感知解决方案。步入发展第八年&#xff0c;…

在vscode终端terminal加大栈空间How to increase max stack size in c++ using vscode

参考:https://devpress.csdn.net/cloud/63268204fd0b112779162383.html Answer a question In many dynamic programming and graph problems it is required to do long depth recursion. I am currently using vscode and mingw in windows for my c programs. But in defau…

MySQL Explain 字段详解

Explain 工具介绍 Explain 一般被称为解释器&#xff0c;通过 Explain 工具&#xff0c;我们能分析我们使用的查询语句或是结构的性能瓶颈&#xff0c;它提供 MySQL 如何执行语句的信息。 使用语法&#xff1a; explain [extended|partition] select在 select 关键字前加 ex…

3D软件坐标系速查

本文介绍不同3D软件的世界坐标系之间的差异及其工作原理。 基本上&#xff0c;游戏引擎和3D软件包最重要的问题是根据软件的坐标轴系统创建资产&#xff0c;正确缩放它们并根据要完成的工作设置枢轴系统。 坐标系正确性的定义可能会根据模型导入的游戏引擎或 3D 软件而变化。…

微服务高级篇(五):可靠消息服务

文章目录 一、消息队列MQ存在的问题&#xff1f;二、如何保证 消息可靠性 &#xff1f;2.1 生产者消息确认【对生产者配置】2.2 消息持久化2.3 消费者消息确认【对消费者配置】2.4 消费失败重试机制2.5 消费者失败消息处理策略2.6 总结 三、处理延迟消息&#xff1f;死信交换机…

HDFSRPC通信框架详解

本文主要对HDFSRPC通信框架解析。包括listener&#xff0c;reader&#xff0c;handler&#xff0c;responser等实现类的源码分析。注意hadoop版本为3.1.1。 写在前面 rpc肯定依赖于socket通信&#xff0c;并且使用的是java NIO。读者最好对nio有一定的了解&#xff0c;文章中…

【Flask】用户身份认证

Flask 用户身份认证 项目代码见&#xff1a;GitHub - euansu123/FlaskMarket 前提条件 # flask-bcrypt 用户密码加密存储 pip install flask_bcrypt -i https://pypi.tuna.tsinghua.edu.cn/simple/ # flask提供的用户登录方法 pip install flask_login -i https://pypi.tuna…

JetBrains全家桶激活,分享 DataGrip 2024 激活的方案

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

git clone没有权限的解决方法

一般情况 git clone时没有权限&#xff0c;一般是因为在代码库平台上没有配置本地电脑的id_rsa.pub 只要配置上&#xff0c;一般就可以正常下载了。 非一般情况 但是也有即使配置了id_rsa.pub后&#xff0c;仍然无法clone代码的情况。如下 原因 这种情况是因为ssh客户端…

阿里云安全产品简介,Web应用防火墙与云防火墙产品各自作用介绍

在阿里云的安全类云产品中&#xff0c;Web应用防火墙与云防火墙是用户比较关注的安全类云产品&#xff0c;二则在作用上并不是完全一样的&#xff0c;Web应用防火墙是一款网站Web应用安全的防护产品&#xff0c;云防火墙是一款公共云环境下的SaaS化防火墙&#xff0c;本文为大家…

[深度学习]yolov8+pyqt5搭建精美界面GUI设计源码实现四

【简单介绍】 经过精心设计和深度整合&#xff0c;我们成功推出了这款融合了先进目标检测算法YOLOv8与高效PyQt5界面开发框架的目标检测GUI界面软件。该软件在直观性、易用性和功能性方面均表现出色&#xff0c;为用户提供了高效稳定的操作体验。 在界面设计方面&#xff0c;…

Spring Boot整合Redis

GitHub&#xff1a;SpringBootDemo Gitee&#xff1a;SpringBootDemo 微信公众号&#xff1a; 0 开发环境 JDK&#xff1a;1.8Spring Boot&#xff1a;2.7.18 1 导入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>sp…