MySQL 学习笔记(一)

自2013年毕业工作至今已经是第6个工作年头了,期间偶有间断,但从事的工作一直是前端开发。只是从前端开发的发展历程看,严格意义上说,以前是美工、切图仔。好在随着行业的发展,如今算是真正意义上的前端开发工程师!岗位的专业化,对从事者有了更高的要求 —— 不再局限于实现简单的静态页面,写写页面交互效果!前后端分离的开发模式被广大发开团队追捧的事实,推动着前端开发人员在原有的工作职责的基础上,还要负责数据渲染部分的工作。

总之,如今的前端开发从事者,虽然根基仍旧是 HTML、CSS、JS 三剑客,但天秤的重心严重偏向于 JS。看看 Node.js 带来的影响,开发界往后的发展趋势是前后端的界限会越来越模糊。

以上是个人对行业发展的浅薄认识。

说点接地气的。着眼于目前的工作需求:协助处理 CRM 数据,通常情况下需要根据后端开发人员提供的 SQL 语句,前端开发者自行编码实现对数据库的增删改查。我们内部叫云函数(一种基于 Node.js 和 Egg.js 框架实现的轻后端接口)。

综上所述,不管是出于行业发展所需,还是当下工作要求需要,简单学习下数据库相关的知识已是刻不容缓。

只要是计算机相关专业的同学想必都清楚,数据库是一个泛指,因为数据库的种类很多,有:MySQL,SQLServer,Oracle,MongoDB,Redis等等。

需要学习的东西数不尽数,那就从最迫切的需求出发,先学习下 MySQL 相关的内容吧!

MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面是最好用的软件之一。

关系型数据库管理系统,RDBMS—— Relational Database Management System.

关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。

一、什么是数据库

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库

每个数据库都有一个或多个不同的 API 用于创建,访问,管理,搜索和复制所保存的数据。

也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢

使用关系型数据库管理系统(RDBMS)来存储和管理大数据量

1. RDBMS 的特点有:

1)数据以表格的形式出现

2)每行为各种记录名称

3)每列为记录名称所对应的数据域

4)许多的行和列组成一张表单

5)若干的表单组成 database

2. RDBMS 的术语有:

数据库:一些关联表的集合。

数据表:表是数据的矩阵。在一个数据库中的表看起来像一个简单的电子表格。

:一列(数据元素)包含了相同的数据 —— 具有相同数据类型的数据的集合。

:一行(元组、记录)是一组相关的数据—— 描述某条记录的具体信息。

冗余:存储两倍数据。降低了性能,但提高了数据的安全性。

主键:一个数据表中只能包含一个主键(唯一性),可以用来查询数据。

外键:用于关联两个表。

复合键/组合键:将多个列作为一个索引键,一般用于复合索引。

索引:索引是对数据库表中一列或多列的值进行排序的一种结构,类似于书籍的目录。使用索引可快速访问数据库表中的特定信息。

参照完整性:参照的完整性要求关系中不允许引用不存在的实体。与实体完整性是关系模型必须满足的完整性约束条件—— 保证数据的一致性

一个关系型数据库有一个或数个表格组成。

(图片来源于菜鸟教程网)

表头:每一列的名称。

:行的具体信息,每个值必须与该列的数据类型相同。

:键的值在当前列中具有唯一性。

二、MySQL 数据库

MySQL 是一种关系型数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内 ——高效且灵活。

开源,采用 GPL 协议;

支持大型的数据库,可以处理拥有上千万条记录的大型数据库;

使用标准的 SQL 数据语言形式;

→ 可以运行于多个系统上,且支持多种语言,如:C、C++、Java、PHP 等;

可定制—— 修改源码来开发自己的 MySQL 系统。

三、本篇小结

本篇主要介绍了学习数据库的初衷,MySQL 只是其中需要学习的一种。然后顺势了解了下什么是数据库,什么是MySQL,以及数据库相关的专业术语。学以致用始终是我们的终极目标,一步步来吧!

参考资料:《菜鸟教程-MySQL》

访问网址:http://www.runoob.com/mysql/mysql-tutorial.html

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190221G1625900?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券