继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

深入浅出后端开发(MySQL篇)

筑梦师winston
关注TA
已关注
手记 28
粉丝 7166
获赞 277

前言

这里筑梦师,是一名正在努力学习的iOS开发工程师,目前致力于全栈方向的学习,希望可以和大家一起交流技术,共同进步,用简书记录下自己的学习历程.

全栈开发自学笔记 已开源
LAMP环境搭建
MySQL学习笔记(基础篇)
[PHP&MySQL学习笔记(实际应用篇)] 稍后更新

本文阅读建议
1.一定要辩证的看待本文.
2.本文并不会涉及到MySQL详细知识点,只陈述在学习MySQL过程中遇到的关键点.
3.MySQL依照其开发应用分为'基础篇,高级篇,实际应用',根据本人学习进度更新.
4.本文只阐述学习路线和学习当中的重点问题.需要读者自己使用百度进行拓展学习.
5.本文所表达观点并不是最终观点,还会更新,因为本人还在学习过程中,有什么遗漏或错误还望各位指出.
6.觉得哪里不妥请在评论留下建议~
7.觉得还行的话就点个小心心鼓励下我吧~

目录
1.MySQL介绍及其概念
2.理解SQL结构化查询语言
3.理解MySQL数据存储
4.MySQL基础学习路线
5.MySQL&PHP结合应用
6.数据库思想

推荐书籍 & 网站推荐

入门向
Head First PHP&MySQL
PHP和MySQL Web开发
PHP+MySQL 开发实战(可以当工具书)

进阶向
高性能MySQL(第3版)
MySQL排错指南
深入理解MySQL核心技术
MySQL技术内幕(第4版)
MySQL技术内幕  InnoDB存储引擎 第2版
MySQL运维内参:MySQL、Galera、Inception核心原理与最佳实践
数据库索引设计与优化

快速浏览
MySQL5.7从入门到精通

网站:MySQL官方网站
网站:MySQL手册


MySQL介绍及其概念

MySQL介绍

  • 高性能

  • 低成本

  • 易于配置和学习

  • 可移植性

  • 源代码可用

  • 支持可用

  • 4.0以后特性

    • 视图

    • 存储过程

    • 触发器和游标

    • 子查询支持

    • 存储地理数据的GIS类型

    • 国际化支持改进

    • 事务安全存储引擎InnoDB

    • MySQL查询缓存,他极大的提升了Web应用常有的查询速度.

  • 5.7以后新特性

    • 大范围的安全提升

    • InnoDB的FULLTEXT支持

    • InnoDB的非SQL API支持

    • 分区支持

    • 复制改进,包括基于行的复制和GTID

    • 线程池

    • 可插拔验证

    • 多核扩展性

    • 更好的诊断工具

    • InnoDB作为默认引擎

    • IPv6支持

    • 插件API

    • 事件调度

    • 自动升级


MySQL概念

数据库

MySQL是数据库的一种,其特点是关系型数据库,开源.可满足中小型项目的开发.

如果用过Excel表格的话,就可以带入数据库.

数据库存放数据,就是将无序的数据按一定的规律和顺序摆放存入,不同的数据库特点、性能不同.

关系型

关系型数据库的特点就是可以对某一列,或某一部分数据进行关系约束,数据存在的依赖约束,通过主键,外键进行表约束和数据约束.


理解SQL结构化查询语言

SQL语言说难也难,说简单也简单,SQL结构化查询语言拥有自己独有的语法,但当你掌握了这门SQL语言,便可以在各大数据库上进行增删改查操作.

SQL简单来说就是根据其特定的单词和语法进行组合,进行数据的操作,其操作大致分为四类:增、删、改、查;

当然还拥有一些其他操作,需要读者进行学习.

在学习MySQL时,推荐大家最好买一本工具书,在自己熟练运用MySQL之前,可以多次翻阅查询工具书,进行练习.


理解MySQL数据存储

根据实践MySQL的SQL语句进行数据库的增删改查操作,体会数据库是如何存储数据的.


MySQL基础学习路线

数据库基本操作学习路线

  • 数据类型

    • 数字类型

    • 字符串类型

    • 日期类型

    • 数据类型抉择

  • 内置函数

    • 字符串函数

    • 日期和时间函数

    • 条件判断函数

    • 系统信息函数

    • 加密函数

    • 其他函数

    • 数学函数

  • 数据库操作

    • 使用数据库 USE DATABASE name

    • 删除数据库 DROP DATABASE name

    • 查看数据库 SHOW

    • 创建数据库 CREATE DATABASE name

  • 数据表操作

    • 添加数据表 CREATE

    • 查看表结构 SHOW COLUMNS/DESCRIBE

    • 查看表详细结构语句 SHOW CREATE TABLE

    • 修改表结构 ALTER TABLE

    • 重命名 RENAME TABLE

    • 删除表 DROP TABLE

  • 数据操作

    • 插入数据 INSERT

    • 查询数据 SELECT

    • 修改数据 UPDATE

    • 删除数据 DELETE

    • 聚合函数

  • 连接查询

    • 查询语句基本格式

    • 内连接查询

    • 左外连接

    • 右外连接

    • 复合条件

    • 子查询

    • 合并查询 UNION

    • 别名查询

    • 正则表达式查询

  • 数据库思想 & 概念

  • 程序业务流程

MySQL高级

  • MySQL函数

  • 数据库权限系统

  • 表优化、索引优化

  • 分库分表

  • 备份、恢复

  • 存储引擎

  • 事务

  • 外键

  • 存储过程

  • 触发器

  • 安全策略

  • 数据库服务器安全


MySQL&PHP结合应用

目前正在进行这方面的实践,稍后会进行此处的更新.


数据库思想

关联 & 外键

  • a 表有的数据 b 表也必须要有

  • b 依赖 a

  • 所以  b 表的数据不给删除 必须要 a 的删除了  b 才能删除

  • 反正 外键就是维护两张或者多张表的数据一致性
    关连 是两张或多张表的逻辑关系
    关连不需要外键

  • 关连只是描述逻辑

  • 它说是外键  你想成关连字段就行了        不是说关连就一定不能是外键      关连字段也可以是外键  但是尽量不要是

  • 文章  -> 帐户

  • 评论  ->  帐户

这个时候有外键约束的话  帐户就不给删除

  • 因为要保持数据的一致性   你帐户删除了 那文章  评论就找不到帐户了

  • 要删除帐户就得把 这个帐户的 文章  以及  评论全部删除了  才能那个删除帐户

  • 而关连  则是   查询文章的时候 看是谁发的   那 拿文章关连帐户 去查询

  • 关连 不须要外键 这是两种东西



打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP