大师网-带你快速走向大师之路 解决你在学习过程中的疑惑,带你快速进入大师之门。节省时间,提升效率

深入理解MySQL---数据库知识最全整理,这些你都知道了吗?

对于后端开发人员来说,经常会和数据打交道,今天总结下数据库相关的知识。包括MySQL,JDBC基础,JDBC进阶,MongoDB,性能优化等知识点。

MySQL

数据库的概述

  • DBMS:关系型数据库管理系统

  • 库管+N个仓库

  • 常见的数据库管理系统

  • MySQL

  • Orcale

  • DB2

  • SQL Server

  • Sybase

MySQL介绍

  • 安装后目录结构

  • mysql.exe:客户端

  • mysqld.exe:服务器

  • my.ini:总配置文件

  • 在windows下开户和关闭mysql服务器

  • net start mysql

  • net stop mysql

  • 登录和退出mysql客户端

  • mysql -u用户名 -p密码 -hIP

  • exit或quit

SQL

  • 解释:结构化查询语言

  • ISO:国际标准化组织

  • ISO定义了很多SQL标准,例如:SQL99

  • 各个数据库厂商需要遵循这个标签!但各个厂商也有自己的方言

  • SQL的分类

  • DDL:数据定义语言

  • DML:数据操作语言

  • DCL:数据控制语言

  • DQL(不在标准中):数据查询语言

DDL:数据定义语言

  • 数据库的操作

  • create database

  • show databases

  • use mydb1

  • alter database

  • drop database

  • 表的操作

  • create table

  • show tables

  • desc mytable1

  • drop table

  • alter table

  • add

  • modify

  • change

  • drop

  • rename to

DML:数据操作语言

  • 插入记录

  • 修改记录

  • 删除记录

  • delete

  • truncat

DCL:数据控制语言

  • 创建用户
  • 授权
  • 撤消权限
  • 查看权限
  • 删除用户

DQL:数据查询语言

  • 基本查询

  • 查看整张表

  • select * from 表名

  • 列控制

  • 列运算:select sal * 1.5 from emp

  • 列运算:连接字符串:select concat(‘我的名称是’, ename) from emp

  • 处理NULL值:select sal + IFNULL(comm, 0) from emp

  • select ename 姓名 from emp

  • 去除完全重复的行:select distinct comm from emp

  • 条件查询

  • 模糊查询

  • 下划线

  • 百分号

  • 排序

  • 降序:desc

  • 升序:asc

  • 聚合函数

  • 数量:count

  • 求最小值:min

  • 求最大值:max

  • 求和:sum

  • 求平均:avg

  • 分组

  • group by

  • having

  • limit

约束

  • 约束保证数据的完整性和一致性

  • 约束分为表级约束和列级约束

  • 对一个数据列建立的约束,列级约束

  • 对多个数据列建立的约束,表级约束

  • 约束类型包括:

  • NOT NULL

  • PRIMARY KEY

  • UNIQUE KEY

  • DEFAULT

  • FOREIGN KEY

中文无法插入解决办法

  • dos 下不支持直接使用utf8;
  • set names gbk,再插入即可。

连接类型

  • 内连接

  • 显示左表及右表符合连接条件的记录

  • 左外连接

  • 显示左表的全部记录及右表符合连接条件的记录

  • 右外连接

  • 显示右表的全部记录及左表符合连接条件的记录

  • 自身连接

  • 同一个数据表对其自身进行连接


**微信搜索公众号【轮子工厂】,后台回复关键字: **
1.回复【内推】:帮你在找工作和找实习的时候,免笔试和简历筛选内推到国内一流互联网大厂;
2.回复【早起】:每天早上7点准时叫你起床;
**3.回复【ps教程】:获取ps视频免费教程; **
**4.回复【图书】:获取15本新手自学编程,零基础入门经典学习教材; **
**5.回复【我要造轮子】:获取100多本我根据知乎上面关于计算机问题的高赞回答里面的介绍整理出来的书籍; **
6.回复【开发工具】:获取几大主流编程语言的开发工具;
希望能帮助到你~