宁波住房和城乡建设网站,网站备案验证码错误,网络销售网站外包,官方网站建设哪儿有目录 前言1. MySQL概述1.1 安装1.1.1 版本1.1.2 安装1.1.3 连接1.1.4 企业使用方式(了解) 1.2 数据模型1.3 SQL简介1.3.1 SQL通用语法1.3.2 分类 前言
在我们讲解SpringBootWeb基础知识(请求响应案例)的时候#xff0c;我们讲到在web开发中#xff0c;为了应用程序职责单一我们讲到在web开发中为了应用程序职责单一方便维护我们一般将web应用程序分为三层即Controller、Service、Dao 。
之前我们的案例中是这样子的请求流程浏览器发起请求先请求ControllerController接收到请求之后调用Service进行业务逻辑处理Service再调用DaoDao再解析user.xml中所存储的数据。 xml文件中可以存储数据但是在企业项目开发中不会使用xml文件存储数据因为不便管理维护操作难度大。 在真实的企业开发中呢都会采用数据库来存储和管理数据那此时web开发调用流程图如下所示 首先来了解一下什么是数据库。
数据库英文为 DataBase简称DB它是存储和管理数据的仓库。
像我们日常访问的电商网站京东企业内部的管理系统OA、ERP、CRM这类的系统以及大家每天都会刷的头条、抖音类的app那这些大家所看到的数据其实都是存储在数据库中的。最终这些数据只是在浏览器或app中展示出来而已最终数据的存储和管理都是数据库负责的。 数据是存储在数据库中的那我们要如何来操作数据库以及数据库中所存放的数据呢
那这里呢会涉及到一个软件数据库管理系统DataBase Management System简称DBMS
DBMS是操作和管理数据库的大型软件。将来我们只需要操作这个软件就可以通过这个软件来操纵和管理数据库了。
此时又出现一个问题DBMS这个软件怎么知道要操作的是哪个数据库、哪个数据呢是对数据做修改还是查询呢
需要给DBMS软件发送一条指令告诉这个软件我们要执行的是什么样的操作要对哪个数据进行操作。而这个指令就是SQL语句
SQLStructured Query Language简称SQL结构化查询语言它是操作关系型数据库的编程语言定义了一套操作关系型数据库的统一标准。我们学习数据库开发最为重要的就是学习SQL语句 。 关系型数据库我们后面会详细讲解现在大家只需要知道我们学习的数据库属于关系型数据库即可。 结论程序员给数据库管理系统(DBMS)发送SQL语句再由数据库管理系统操作数据库当中的数据。
了解了数据库的一些简单概念之后接下来我们再来介绍下目前主流的数据库这里截取了排名前十的数据库 Oracle大型的收费数据库Oracle公司产品价格昂贵。通常是不差钱的公司会选择使用这个数据库MySQL开源免费的中小型数据库后来Sun公司收购了MySQL而Oracle又收购了Sun公司。目前Oracle推出两个版本的Mysql社区版(开源免费)、商业版(收费)。SQL ServerMicrosoft 公司推出的收费的中型数据库C#、.net等语言常用。PostgreSQL开源免费的中小型数据库。DB2IBM公司的大型收费数据库产品。SQLLite嵌入式的微型数据库。Android内置的数据库采用的就是该数据库。MariaDB开源免费的中小型数据库。是MySQL数据库的另外一个分支、另外一个衍生产品与MySQL数据库有很好的兼容性。
那这么多数据库我们全部都需要学习吗其实并不用我们只需要学习其中的一个就可以了我们此次课程中学习的数据库是现在互联网公司开发使用最为流行的MySQL数据库。
此时大家可能会有一个疑问我们现在学习的是Mysql数据库我们以后去公司做开发如果用到的是Oracle数据库或SQL Server数据库该怎么办其实大家完全不用担心这个问题因为这些数据库都是属于关系型数据库要操作关系型数据库都是通过 SQL语句来实现的而SQL语句又是操作关系型数据库的统一标准。 结论只要我们学会了SQL语句就可以通过SQL语句来操作Mysql也可以通过SQL语句来操作Oracle或SQL Server 课程内容安排 以上课程内容拆解为3部分知识点 接下来我们就先进入到第一天的Mysql概述学习。
1. MySQL概述 官网https://dev.mysql.com/
1.1 安装
1.1.1 版本
MySQL官方提供了两个版本 商业版本MySQL Enterprise Edition 该版本是收费的我们可以使用30天。 官方会提供对应的技术支持。 社区版本MySQL Community Server 该版本是免费的但是MySQL不会提供任何的技术支持。 本课程采用的是MySQL的社区版本8.0.31 1.1.2 安装
官网下载地址https://downloads.mysql.com/archives/community/ 这个安装包呢大家可以不用下载因为资料中已提供现成的安装包。 安装MySQL具体的步骤参考资料中提供的 《MySQL安装文档》 进行软件的安装即可。 1.1.3 连接
MySQL服务器启动完毕后然后再使用如下指令来连接MySQL服务器
mysql -u用户名 -p密码 [-h数据库服务器的IP地址 -P端口号]-h 参数不加默认连接的是本地 127.0.0.1 的MySQL服务器 -P 参数不加默认连接的端口号是 3306 上述指令可以有两种形式
密码直接在-p参数之后直接指定 这种方式不安全密码直接以明文形式出现在命令行 密码在-p回车之后在命令行中输入密码然后回车 1.1.4 企业使用方式(了解)
上述的MySQL服务器我们是安装在本地的这个仅仅是在我们学习阶段在真实的企业开发中MySQL数据库服务器是不会在我们本地安装的是在公司的服务器上安装的而服务器还需要放置在专门的IDC机房中的IDC机房呢就需要保证恒温、恒湿、恒压而且还要保证网络、电源的可靠性(备用电源及网络)。 那我们要想使用服务器上的这台MySQL服务器就需要在我们的电脑上去远程连接这台MySQL。 而服务器上安装的MySQL数据库呢并不是你一个人在访问我们项目组的其他开发人员也是需要访问这台MySQL的。 我们在学习阶段如果想提前体验一下企业中数据库的使用方式可以借助于VMware虚拟机来实现。我们可以在我们的电脑上安装一个VMware然后在Vmware虚拟机上在安装一个服务器操作系统Linux然后再在Linux服务器上安装各种企业级软件。 接下来就来演示一下通过MySQL的客户端命令行如何来连接服务器上部署的MySQL
mysql -u用户名 -p密码 [-h数据库服务器的IP地址 -P端口号]1.2 数据模型
介绍完了Mysql数据库的安装配置之后接下来我们再来聊一聊Mysql当中的数据模型。学完了这一小节之后我们就能够知道在Mysql数据库当中到底是如何来存储和管理数据的。
在介绍 Mysql的数据模型之前需要先了解一个概念关系型数据库。
关系型数据库RDBMS
概念建立在关系模型基础上由多张相互连接的二维表组成的数据库。
而所谓二维表指的是由行和列组成的表如下图 二维表的优点 使用表存储数据格式统一便于维护 使用SQL语言操作标准统一使用方便可用于复杂查询 我们之前提到的MySQL、Oracle、DB2、SQLServer这些都是属于关系型数据库里面都是基于二维表存储数据的。 结论基于二维表存储数据的数据库就成为关系型数据库不是基于二维表存储数据的数据库就是非关系型数据库比如大家后面要学习的Redis就属于非关系型数据库。 2). 数据模型
介绍完了关系型数据库之后接下来我们再来看一看在Mysql数据库当中到底是如何来存储数据的也就是Mysql 的数据模型。
MySQL是关系型数据库是基于二维表进行数据存储的具体的结构图下:
通过MySQL客户端连接数据库管理系统DBMS然后通过DBMS操作数据库使用MySQL客户端向数据库管理系统发送一条SQL语句由数据库管理系统根据SQL语句指令去操作数据库中的表结构及数据一个数据库服务器中可以创建多个数据库一个数据库中也可以包含多张表而一张表中又可以包含多行记录。 在Mysql数据库服务器当中存储数据你需要 先去创建数据库可以创建多个数据库之间是相互独立的在数据库下再去创建数据表一个数据库下可以创建多张表再将数据存放在数据表中一张表可以存储多行数据 1.3 SQL简介
SQL结构化查询语言。一门操作关系型数据库的编程语言定义操作所有关系型数据库的统一标准。
在学习具体的SQL语句之前先来了解一下SQL语言的语法。
1.3.1 SQL通用语法
1、SQL语句可以单行或多行书写以分号结尾。 2、SQL语句可以使用空格/缩进来增强语句的可读性。 3、MySQL数据库的SQL语句不区分大小写。 4、注释
单行注释-- 注释内容 或 # 注释内容(MySQL特有)多行注释 /* 注释内容 */ 以上就是SQL语句的通用语法这些通用语法大家目前先有一个直观的认识我们后面在讲解每一类SQL语句的时候还会再来强调通用语法。 1.3.2 分类
SQL语句根据其功能被分为四大类DDL、DML、DQL、DCL
分类全称说明DDLData Definition Language数据定义语言用来定义数据库对象(数据库表字段)DMLData Manipulation Language数据操作语言用来对数据库表中的数据进行增删改DQLData Query Language数据查询语言用来查询数据库中表的记录DCLData Control Language数据控制语言用来创建数据库用户、控制数据库的访问权限