0 Preview

MySql 我已经学过一次了(虽然只是入个门),增删查改基本操作也搞明白了。
贵校又安排了一门《数据库原理与应用》,既然扯到了原理,那还是需要认真学一学的。
总而言之
这门课👴还是有兴趣的,要不然也不会开着篇博客。

环境搭建方面我还是喜欢 PhpStudy 的小皮面板;
不过学校的教学使用 navicat premium
这俩环境应该可以共存。
👴认真思考了一下,虽然👴搞的不是开发不用深学数据库。但是以后👴万一要搞 iot 还是要学一下的。

0.5 知识总结

0.5.1 问题汇总

1、试述数据、数据库、数据库系统、数据库管理系统的概念。
2、试述数据库系统的特点。
3、数据库管理系统的主要功能有哪些?
4、试述数据库系统的组成。
5、试述数据模型的概念、数据模型的作用和数据模型的三个要素。
6、什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性?
7、试述关系数据库的特点。
8、试述数据库系统三级模式结构,这种结构的优点是什么?
9、定义并解释以下术语:模式、外模式、内模式、 DDL 、 DML 。

答案和知识总结会放在末尾,这里就不占篇幅了。

1 环境搭建

phpstudy的下载安装参考我去年写的第一篇博客:MYSQl入门

image-20210830142444650

可以直接在phpstudy中安装MySQL即可。

1.2 环境变量配置

如果还不知道环境变量是什么意思或者说如何配置环境变量那就可以入土了 去百度。
我还是在这里写一个详细的环境变量配置教程,以后的所有软件都是如此的。

🦋 右键我的电脑-属性-高级系统设置-环境变量:

image-20210830142951414

image-20210830143033352

🦋 在下面的系统变量中-新建:
image-20210830143524110

其中填写的路径可以在PhpStudy中点击配置来查看。
🦋 最后在原有的 Path 中添加变量:%MYSQL_HOME%\bin
image-20210830143739022

保存退出,打开cmd进行测试;

1.3 环境验证

在cmd中输入指令登陆mysql,默认密码为 root

1
2
BASH
mysql -uroot -p

image-20210830144529075

如果提示不是指令的话,请确认以下步骤操作无误:

🌸 mysql安装路径没有中文且没有空格。
🌸 PhpStudy中启动了mysql环境:首页-mysql-启动。
🌸 mysql的环境变量是否配置正确。

2 navicat12使用

我也是头一次用这玩意儿,不过看起来有点影响我继续学习命令行

image-20210830145728569

这些数据都是默认的,不得不说这俩软件协调性挺高的。
正常连接以后是这样的结果:
image-20210830145858185

瞬间上手了,这就是个类似远程控制台的东西,如果之前玩过 AWD 或者自己搞过网站用过finalshell的,都可以很快上手,有服务器还可以在服务器试试mysql 用这个连上去玩玩。
这么一说下一篇先写一下普通的增删查改,第三篇写一下服务器linux下的操作。

总结

1、DB:数据库,存储数据的容器
2、DBMS:数据库管理系统,又称为数据库软件或数据库产品,用于创建或管理DB
3、SQL:结构化查询语言,用于和数据库通信的语言,不是某个数据库软件特有的,而是几乎所有的 主流数据库软件通用的语言

所以说,MYSQL并不能叫做数据库,他只是数据库软件。

2 Answer

1 数据、数据库、数据库系统、数据库管理系统的概念。

🔑 数据:描述事物的符号记录称为数据。数据的种类有文字、图形、图象、声音、正文等等。数据与其语 义是不可分的。
👴认为数据都是01序列,只不过介质不同。
🔑 数据库:数据库是长期储存在计算机内、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
🔑 数据库系统:数据库系统(DBS)是指在计算机系统中引入数据库后的系统构成。数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
🔑
数据库管理系统
(Database Management System)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS。它对数据库进行统一的管理和控制.

2 数据库系统的特点。

1.数据结构化
2.数据的共享性高,冗余度低,易扩充
3.数据独立性
4.数据由DBMS统一管理控制

3 数据库管理系统的主要功能有哪些?

1、数据定义。DBMS提供数据定义语言DDL,供用户定义数据库的三级模式结构、两级映像以及完整性约束和保密限制等约束。
2、数据操作。

img

3、数据库的运行管理。
4、数据组织,存储与管理。
5、数据库的保护。
6、数据库的维护。

4 数据库系统的组成

数据库、硬件、软件、人员
第一类为系统分析员和数据库设计人员;第二类为应用程序员,负责编写使用数据库的应用程序。;第三类为最终用户,他们利用系统的接口或查询语言访问数据库。第四类用户是数据库管理员(data base administrator,DBA),负责数据库的总体信息控制。

5 数据模型的概念 三要素

数据模型是数据库系统中用于提供信息表示和操作手段的形式构架,是现实世界的模拟和抽象。
数据模型的作用是模拟现实世界,使人容易理解,便于在计算机上实现。
数据模型三要素:数据结构、数据操作、数据的约束条件。

6 为什么数据库系统具有数据与程序的独立性

当数据库的存储结构改变了(例如选用了另一种存储结构),由数据库管理员对模式/内
模式映象作相应改变,可以使模式保持不变,从而应用程序也不必改变。保证了程序与数据
的物理独立性,简称数据的物理独立性。

当需要改变模式时(例如增加新的关系、新的属性、改变属性的数据类型、改变数据间
的联系等),由数据库管理员对各个外模式/模式的映象作相应改变,而使外模式保持不变,
从而不必修改或重写应用程序改。而应用程序是依据数据的外模式编写的,保证了数据与程
序的逻辑独立性。简称数据的逻辑独立性。

特定的应用程序是在外模式描述的数据结构上编制的,它依赖于特定的外模式,与数据
库的模式和存储结构独立。不同的应用程序有时可以共用同一个外模式。数据库的二级映象
保证了数据库外模式的稳定性,从而从底层保证了应用程序的稳定性,除非应用需求本身发
生变化,否则应用程序一般不需要修改。

7 关系数据库的特点

1)数据集中控制。在文件管理方法中,文件是分散的,每个用户或每种处理都有各自的文件,这些文件之间一般是没有联系的,因此,不能按照统一的方法来控制、维护和管理。而数据库则很好地克服了这一缺点,可以集中控制、维护和管理有关数据。
2)数据独立性高。数据库中的数据独立于应用程序,包括数据的物理独立性和逻辑独立性,给数据库的使用、调整、优化和进一步扩充提供了方便,提高了数据库应用系统的稳定性。
3)数据共享性好。数据库中的数据可以供多个用户使用,每个用户只与库中的一部分数据发生联系;用户数据可以重叠,用户可以同时存取数据而互不影响,大大提高了数据库的使用效率。
4)数据冗余度小。数据库中的数据不是面向应用,而是面向系统。数据统一定义、组织和存储,集中管理,避免了不必要的数据冗余,也提高了数据的一致性。
5)数据结构化,整个数据库按一定的结构形式构成,数据在记录内部和记录类型之间相互关联,用户可通过不同的路径存取数据。
6)统一的数据保护功能,在多用户共享数据资源的情况下,对用户使用数据有严格的检查,对数据库规定密码或存取权限,拒绝非法用户进入数据库,以确保数据的安全性、一致性和并发控制。

8 数据库系统的三级模式结构

数据库系统的三级模式结构由外 模式、模式个内模式组成。

9 模式、外模式、内模式、 DDL 、 DML

(1) 外模式,亦称子模式或者用户模式(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。
(2) 模式,亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构。
(3) 内模式,亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。(4) DDL:数据定义语言,用来定义数据库模式、外模式、内模式的语言。
(5) DML:数据操纵语言,用来对数据库中的数据进行查询、插入、删除和修改的语句。