MySQL学习笔记
福建选手阿俊
在无人问津的地方训练,在万众瞩目的地方出现
展开
-
MySQL架构介绍
文章目录1:Mysql简介2:Mysql Linux版的安装3:Mysql配置文件4:Mysql逻辑架构介绍5:Mysql存储引擎1:Mysql简介MySQL是-一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而不是将所有数据放在一个大仓库内, 这样就增加了速度并提高了灵活性。Mysql是开源的,所以你不需要支付额外的费用。Mysq|支持大型的数据库。可以处理拥有上千万条记录的大型数据库。原创 2020-07-10 16:27:25 · 229 阅读 · 2 评论 -
MySQL——数据库锁理论
文章目录1:锁的概述2:表锁(偏读)介绍3:行锁(偏写)介绍1:锁的概述定义:锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其...原创 2020-03-02 22:21:12 · 233 阅读 · 1 评论 -
MySQL——索引优化分析
文章目录1:SQL性能下降的原因2:常见通用的Join查询2.1 SQL执行顺序2.2 七种JOIN理论3:索引简介1:SQL性能下降的原因主要原因:1:查询语句写的烂2:索引失效3:关联查询太多join ( 设计缺陷或不得已的需求)4:服务器调优及各个参数设置(缓冲、线程数等)2:常见通用的Join查询2.1 SQL执行顺序首先我们写一条查询语句SELECT DISTINCT...原创 2020-03-01 16:12:21 · 513 阅读 · 1 评论 -
Mysql整体架构分析
1:连接层最上层是一些客户端和连接服务,包含本地sock通信和大多数基于客户端/服务端工具实现的类似于tcp/ip的通信。 主要完成一些类似于连接处理、授权认证、及相关的安全方案。在该层上引入了线程池的概念,为通过认证安全接入的客户端提供线程。同样在该层上可以实现基于SSL的安全链接。服务器也会为安全接入的每个客户端验证它所具有的操作权限。2:服务层第二层架构主要完成大多少的核心服务功能,...原创 2020-02-28 00:31:17 · 191 阅读 · 1 评论 -
DDL语言(Data Definition Language)——(2)表的管理
表的管理表的创建(create)语法:create table 表名(列名 列的类型 (长度) 约束 关键字列名 列的类型 (长度) 约束 关键字。。。列名 列的类型 (长度) 约束 关键字)表的修改(alter)语法 alter table 表名 add|drop|modify|change|rename to column 列名修改列名语法 :alter...原创 2019-08-15 16:50:25 · 151 阅读 · 0 评论 -
DDL语言(Data Definition Language)——(3)数据类型
文章目录1,常见的数据类型1.1数据类型——整型和小数数据类型——字符型数据类型——日期型1,常见的数据类型1; 数值型:整型小数: (1)定点数 (2) 浮点数2;字符型:较短的文本: char. varchar较长的文本: text. blcb (较长的二进制数据》3;日期型:1.1数据类型——整型...原创 2019-08-15 17:04:19 · 257 阅读 · 0 评论 -
DDL语言(Data Definition Language)——(4)约束条件
文章目录1,约束条件1.1约束条件——创建表时添加列级约束和表级约束1.2 约束条件——修改表时添加列级约束和表级约束2,标识列1,约束条件约束:含义:一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠性分类:六大约束NOT NULL:非空,用于保证该字段的值不能为空比如姓名、学号等DEFAULT:默认,用于保证该字股有默认值比如性别PRIMARY KEY:主键,...原创 2019-08-15 18:20:00 · 316 阅读 · 0 评论 -
DQL语言(Data Query Language)——(7)子查询
文章目录1,子查询的陈述1.1 子查询出现的位置——where或having后面1.2子查询出现的位置——select后面(仅支持标量子查询)1.3子查询出现的位置——from后面(支持表子查询)1.4子查询出现的位置——exinta后面1,子查询的陈述概念: 出现在其他语句内部的select语句,称为子查询或内查询内部嵌套其他select语句的查询,称为外查询或主查询分类:按子查...原创 2019-08-15 22:03:37 · 122 阅读 · 0 评论 -
DML语言(Data Management Language)
DML语言(Data Management Language)原创 2019-08-15 22:09:40 · 183 阅读 · 0 评论 -
DQL语言(Data Query Language)
DQL语言(Data Query Language)DQL语言(Data Query Language)——(1)基础查询DQL语言(Data Query Language)——(2)条件查询DQL语言(Data Query Language)——(3)排序查询DQL语言(Data Query Language)——(4)常见函数介绍DQL语言(Data Query Languag...原创 2019-08-15 22:11:48 · 253 阅读 · 0 评论 -
DDL语言(Data Definition Language)
DDL语言(Data Definition Language)DDL语言(Data Definition Language)——(1)库的管理DDL语言(Data Definition Language)——(2)表的管理DDL语言(Data Definition Language)——(3)数据类型DDL语言(Data Definition Language)——(4)约束条件...原创 2019-08-15 22:22:44 · 293 阅读 · 0 评论 -
TCL语言(Transaction Controlo Language)
文章目录1,事务介绍2,事物的创建3,事务并发问题介绍4,回滚点演示1,事务介绍事物:含义:事务由单独单元的一个或多个SQL语句组成,在这个单元中,每个MySQL语句是相互依赖的。而整个单独单元作为一个不可分割的整体,如果单元中某条SQL语句一且执行失败或产生错误,整个单元将会回滚。所有受到影响的数据将返回到事物开始以前的状态;如果单元中的所有SQL语句均执行成功,则事物被顺利执行。事务的A...原创 2019-08-15 23:42:13 · 593 阅读 · 0 评论 -
视图
文章目录1,视图的介绍2,视图的创建3,视图的修改4,视图的删除5,视图的查看6,视图的更新1,视图的介绍视图含义: MySQL从5.0.1版本开始提供视图功能。一种虚拟存在的表,行和列的数据来自定义视图的查询中使用的表。并且是在使用视图时动态生成的,只保存了sql逻辑,不保存查询结果,不占用物理内存应用场景:—多个地方用到同样的查询结果—该查询结果使用的sql语句较复杂2,视图的创建...原创 2019-08-16 15:18:27 · 346 阅读 · 0 评论 -
存储过程和函数——(1)存储过程的介绍和语法
文章目录1,变量2,存储过程的介绍和语法空参的存储过程带in模式的存储过程带out模式的存储过程3,存储过程的删除和查看1,变量系统变量:全局变量,会话变量。自定义变量:用户变量,局部变量。1;系统变量:**含义:**变量由系统提供,不是用户定义,属于服务器层面,不可以跨重启语法:1:查看所有的系统变量show global|session variables;2:查看满足条件的部...原创 2019-08-16 16:48:25 · 153 阅读 · 0 评论 -
存储过程和函数——(2)函数
@1,函数的介绍含义:一组预先编译好的SQL语句的集合,理解成批处理语句1.提高代码的重用性2、简化操作3、减少了编译次数并且减少了和数据率服务器的连接次数,提高了效率区别:存储过程:可以有0个返回,也可以有多个返回,适合做批量插入、批量更新函数:有且仅有1个返回,适合做处理数据后返回一个结果2, 函数的创建和调用语法一、创建语法CREATE FUNCTION 函数名(参数...原创 2019-08-16 16:54:14 · 98 阅读 · 0 评论 -
DDL语言(Data Definition Language)——(1)库的管理
库的管理1:库的创建(create)语法:1:create database 库名; 2:create database if not exists 库名 ( if not exists意思是如果存在不修改该库,不存在修改)2:库的修改(alter)语法:alter database 库名 to 新库名3:库的删除(drop)语法:1: drop database ...原创 2019-08-15 16:25:34 · 129 阅读 · 0 评论 -
DML语言(Data Management Language)——(3)删除语句
语法:1:delete from 表名 where 筛选条件;2:truncate table 表名两种方式pk1:delete可以加筛选条件,truncate不行2:truncate删除,效率高一点点3:如果用delete删除后,在插入数据,自增长列的值从断点开始。而truncate删除后,在插入数据,自增长从1开始4:truncate删除有返回值,delete删除无返回值5:tr...原创 2019-08-15 16:16:56 · 102 阅读 · 0 评论 -
为什么要学习数据库
通俗易懂就两句话实现数据持久化使用完整的管理系统统一管理,使得大量信息易于查询原创 2019-08-14 21:32:55 · 3553 阅读 · 0 评论 -
数据库的相关概念和MySQL介绍和特点
DB数据库(database):储存数据的"仓库"。它保存了一系列有组织的数据DBMS数据库管理系统(Database Management System):数据库是通过DBMS创建和操作的容器常见的数据库管理系统:MySQL,Oracle,DB2,SqlServerSQL结构化查询语言(Structure Query Language):专门用来与数据库通讯的语言S...原创 2019-08-14 21:37:41 · 556 阅读 · 0 评论 -
数据库储存数据的特点
1、 将数据放到表中,表再放到库中.2、一个数据库中可以有多个表,每个表都有一个的名字,用来标识自己。表名具有唯一性。3、 表具有一些特性,这些特性定义了数据在表中如何存储,类似java中“ 类”的设计。4、 表由列组成,我们也称为字段。所有表都是由一个或多个列组成的,每一列类似java中的” 属性”5、 表中的数据是按行存储的,每一行类似于java中的 “对象’表的大概样子...原创 2019-08-14 21:48:44 · 1829 阅读 · 0 评论 -
初始化MySQL(1)——MySQL产品的特点
MySQL产品的特点MySQL数据库隶属于MySQL AB公司,总部位于瑞典,08年被sum公司收购,09年后被oracle收购。优点:—成本低:开放源代码,—般可以免费试用:—性能高:执行很快—简单:很容易安装和使用DBMS分为两类:—基于共享文件系统的DBMS ( Access)一基于客户机———— 服务器的DBMS( MySQL. Oracle、 SqlServer)...原创 2019-08-14 21:51:17 · 134 阅读 · 0 评论 -
初始化MySQL(2)——MySQL的版本
MySQL的版本社区版(免费)企业版(收费)Windows平台下下载 MySQL下载地址原创 2019-08-14 21:52:58 · 110 阅读 · 0 评论 -
初始化MySQL(3)——MySQL软件的安装
MySQL安装教学视频原创 2019-08-14 21:53:59 · 172 阅读 · 0 评论 -
初始化MySQL(4)——MySQL常见命令
1:查看当前所有的数据库语法:show databases;2:打开确定的库语法:use 库名3:查看当前库的所有表语法:show tables4:查看其他库的的所有表语法:show tables from 库名5:创建表语法:create table 表名( 列名 列类型, 列名 列类型,)6:查看表结构语法:desc 表名7:查看服务器...原创 2019-08-14 21:56:38 · 451 阅读 · 0 评论 -
初始化MySQL(5)——MySQL的语法规范
1:不区分大小写,但是建议关键字大小写****,表名,列名小写2:每条命令最好用分号结尾3:每条命令根据需要,可以进行缩进或换行4:注释 单行注释:–注释文字 单行注释:#注释文字 多行注释:/ 注释文字 /...原创 2019-08-14 21:57:38 · 137 阅读 · 0 评论 -
DQL语言(Data Query Language)——(1)基础查询
基础查询语法:select 查询列表,查询列表 from 表名;特点:1:查询列表可以是表中的字段,常量值,表达式,函数2:查询结果是一个虚拟表格演示:在teacher表中查询idt字段和name字段teacher表演示语法:SELECT idt,name FROM teacher;结果:补充:1:起别名语法:法一:使用asselect 12 as lqx法二:使用...原创 2019-08-14 23:34:06 · 177 阅读 · 0 评论 -
DQL语言(Data Query Language)——(2)条件查询
条件查询语法:select 查询列表,查询列表 from 表名 where 筛选条件筛选条件分类:1:按条件表达式筛选 条件运算符:>:大于,<:小于, =:等于,!=:不等于,>=:大等于,<=:小等于,<> :不等于演示:在teacher表中查询idt,name,且idt不等于14的属性值。teacher表演示语法:S...原创 2019-08-15 00:23:18 · 170 阅读 · 0 评论 -
DQL语言(Data Query Language)——(3)排序查询
排序查询语法: select 列表,列表 from 表 where 筛选条件 order by 排序列表 asc或desc特点:1:asc:升序 (默认) desc :降序 2:order by 子句可以支持当个字段,多个字段,表达式,函数,别名 3:order by 子句一般都是放在查询语句最后面,limit 子句除外演示:在t...原创 2019-08-15 09:31:36 · 122 阅读 · 0 评论 -
DQL语言(Data Query Language)——(4)常见函数介绍
1,函数概念概念:类似于java方法,将一组逻辑语句封装在方法体中,对外暴露方法名。好处:1:隐藏了实现细节 2:提高了代码重用性调用: select 函数名(实参列表) from 表特点:1:叫什么(函数名) 2:干什么(函数功能)分类:单行函数分类:字符函数,数学函数,日期函数,其他函数,流程控制函数分组函数功能:做统计使用,又称为统计函数,聚合...原创 2019-08-15 11:13:56 · 231 阅读 · 0 评论 -
DQL语言(Data Query Language)——(5)分组查询
分组查询分组查询中的筛选条件分两类数据源位置关键字分组前筛选原始表group by子句前面where分组后筛选分组后的表group by子句后面having分组前筛选语法:SELECT 分组函数,字段 FROM 表 WHERE 筛选条件 GROUP BY 字段l;分组前的筛选的数据源是原始表演示:在t_dictionary表中,查询id...原创 2019-08-15 12:14:44 · 121 阅读 · 0 评论 -
DQL语言(Data Query Language)——(8)分页查询
应用场景:当要显示的数据一页显示不全,需要分页显示sql请求语法:select 查询列表 from 表1 别名 join 表2 别名 on 连接条件 【where 筛选条件】 【group by 分组】 【having 筛选条件】 【...原创 2019-08-15 12:55:37 · 118 阅读 · 0 评论 -
DQL语言(Data Query Language)——(9)联合查询
联合查询含义:将多条查询语句的结果合并成一个结果语法:查询语句 union 查询语句特点:1:要求多条查询语句的查询列数是一致的 2:要求多条查询语句的查询的每一列的类型和顺序最好一致 3:union关键字默认是去重的,如果使用union all关键字可以包含重复项演示:在t_admin_role表和t_admin表中,联合查询id值...原创 2019-08-15 13:09:28 · 118 阅读 · 0 评论 -
DML语言(Data Management Language)——(1)插入语句
插入语句语法:1:insert into 表名 ( 列名,列名,…) value(值1,值2,…),(值1,值2…);语法:2:insert into 表名 set 列名=值,列名=值;特点:1;列的顺序可以调换 2:列数和值的个数必须一致3;可以省略列名,默认所有列,而且列的顺序和表中列的顺序一致两种方法pk1:方法一支持插入多行,方式二不...原创 2019-08-15 15:29:02 · 121 阅读 · 0 评论 -
DML语言(Data Management Language)——(2)修改语句
语法:update 表名 set 列名=值,列名=值 where 筛选条件;演示:修改test1表中的,name=zlj的age值为111test1表演示语法:UPDATE test1 SET age=111 WHERE name=“zlj”;结果:...原创 2019-08-15 15:47:05 · 117 阅读 · 0 评论 -
DQL语言(Data Query Language)——(6)连接查询
连接查询按功能分类:内连接(等值连接,非等值连接,自连接),外连接(左外连接,右外链接,全外连接),交叉连接按年代分类:sql92标准(仅支持内连接),sql99标准(都支持,除了全外连接)现在我们介绍sql99标准语法:select 查询列表 from 表1 别名 连接类型 join 表2 别名 on 连...原创 2019-08-04 15:30:28 · 138 阅读 · 1 评论