手记

深入理解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,再插入即可。

连接类型

  • 内连接

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

  • 左外连接

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

  • 右外连接

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

  • 自身连接

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



作者:在北方玩弹子球
链接:https://www.jianshu.com/p/361b1f3785a6

0人推荐
随时随地看视频
慕课网APP