MySQL
文章平均质量分 85
流烟默
这个作者很懒,什么都没留下…
展开
-
MySQL8.0新特性与旧特性移除总结
MySQL从5.7版本直接跳跃发布了8.0版本 ,可见这是一个令人兴奋的里程碑版本。MySQL 8版本在功能上做了显著的改进与增强,开发者对MySQL的源代码进行了重构,最突出的一点是对MySQL Optimizer优化器进行了改进。不仅在速度上得到了改善,还为用户带来了更好的性能和更棒的体验。# 【1】MySQL8.0增加的新特性## ① 更简便的NoSQL支持NoSQL泛指非关系型数据库和数据存储。随着互联网平台的规模飞速发展,传统的关系型数据库已经越来越不能满足需求。从5.6版本开始,MySQL原创 2019-01-17 17:11:45 · 1577 阅读 · 1 评论 -
MySQL/Navicat使用实践总结
① 导入的时候,选择.csv 格式;② 编码–选择GB2312(我这里选择UTF-8,乱码);③ 日期那里,分隔符修改为”-“(csv文件中日期格式为/)。原创 2017-12-05 18:25:10 · 6995 阅读 · 1 评论 -
认真学习MySQL中的角色权限控制
# 【1】 权限管理关于MySQL的权限简单的理解就是MySQL运行你做你权力以内的事情,不可以越界。比如只允许你执行select操作,那么你就不能执行update操作。只允许你从某台机器上连接MySQL,那么你就不能从除那台机器以为的其他机器连接MySQL。## ① 权限列表可以使用如下命令查看MySQL到底有哪些权限```sqlshow privileges;```|权限分布|可能设置的权限 ||--|--|| 表权限 | Select Insert Update Delete C原创 2022-09-20 14:22:55 · 3511 阅读 · 0 评论 -
MySQL5.7解压版安装
HTML页面<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>省市区三级联动(jQuery+原创 2016-11-09 15:34:29 · 1308 阅读 · 0 评论 -
MySQL中存储过程使用详解
【1】存储过程简介存储过程中的控制语句 【http://blog.csdn.net/J080624/article/details/72353508】不同类型参数存储过程示例 【http://blog.csdn.net/j080624/article/details/55096307】MyBatis调用存储过程 【http://blog.csdn.net/J080624/article/det原创 2017-05-16 20:06:13 · 5034 阅读 · 0 评论 -
MySQL中列属性(主键、唯一键和自增等)使用实践
数据表中,真正约束字段的是数据类型。但是数据类型的约束很单一,需要有一些额外的约束,来更加保证数据的合法性。查看表数据结构红色表示数据类型;蓝色表示列属性;列属性有很多,大致如下:NOT NULL/NULL, DEFAULT, PRIMARY KEY, UNIKUE KEY, AUTO_INCREMENT, COMMENT【1】空属性其有两个值:null(默认值) 和 not nul原创 2017-05-12 09:26:29 · 76625 阅读 · 0 评论 -
MySQL - 数据库中的系统变量和用户变量详解
MySQL中变量分为两种:系统变量和用户变量。【1】系统变量系统定义好的变量,大部分时候用户根本不需要使用系统变量。系统变量是用来控制服务器表现的。如:autocommit,auto_increment_increment等。【查看系统变量】--查看所有变量show variables;--查看范围变量show variables like '%变量名%';示例:--查看mysql数据目录sh原创 2017-06-28 10:37:54 · 3803 阅读 · 0 评论 -
MySQL中常用函数之日期函数使用详解
该篇总结MySQL 中常用的日期时间函数。【1】DATE_FORMAT (datetime ,FormatCodes ) 示例如下:SELECT DATE_FORMAT(SYSDATE(),'%W'),DATE_FORMAT(SYSDATE(),'%w'),DATE_FORMAT(SYSDATE(),'%Y-%m-%d');date_format格式参考MySQLdateFormat格式EXT...原创 2017-07-05 11:08:09 · 10109 阅读 · 0 评论 -
MySQL中日期时间类型与格式化
Mysql中常用的几种时间类型有:date、datetime、time、year、timestamp;Datetime : 时间日期型,格式是YYYY-mm-dd HH:ii:ss,表示的范围是从1000到9999。但是有零值,0000-00-00 00:00:00;Date:日期,就是datetime中的date部分;Time:时间(段),指定的某个区间之间,从-时间到+时间(有负时间表示);T...原创 2016-12-01 11:09:12 · 103274 阅读 · 1 评论 -
MySQL中多表连接查询总结与实践
连接查询:将多张表(>=2)进行 记录的连接(按照某个指定的条件进行数据拼接)。连接查询的意义:在用户查看数据的时候,数据往往来源于多张表。连接查询的真谛:根据从左表拿出一条记录到右表匹配根据条件进行过滤。多表如是。【1】连接查询的分类SQL 中将连接查询分为四类:内连接,外连接,自然连接和交叉连接。其中外连接又分为左外连接和右外连接。【2】交叉连接交叉连接:cross join。从一张表中循原创 2017-06-06 10:35:08 · 8056 阅读 · 0 评论 -
MySQL - 动态SQL与预处理语句
在存储过程或者函数中,有时SQL语句是通过变量传值生成的。这时候就需要使用动态SQL,如果直接在SQL语句中植入变量,将提示无该字段或表。如下所示:v_db 和v_table均是变量传值动态生成。create table v_table like v_db.v_table;直接执行将提示错误。【动态SQL】动态SQL示例如下(在存储过程中使用):CREATE PROCEDURE `proc_co原创 2017-07-21 10:22:30 · 5917 阅读 · 0 评论 -
认真学习MySQL中游标与实例分析
【1】游标简介游标,又称光标。实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。游标充当指针的作用。尽管游标能遍历结果中的所有行,但他一次只指向一行。概括来讲,SQL的游标是一种临时的数据库对象,即可以用来存放在数据库表中的数据行副本,也可以指向存储在数据库中的数据行的指针。游标提供了在逐行的基础上操作表中数据的方法。游标的一个常见用途就是保存查询结果,以便以后使用。游标的结果集是由...原创 2017-05-17 14:08:28 · 2184 阅读 · 0 评论 -
MySQL中存储过程中的控制语句使用详解
【1】if …then …elseif ….then…else..end if示例如下:BEGIN #Routine body goes here... IF pinout = 0 THEN SELECT COUNT(*) FROM c_user into pinout; ELSEIF pinout =1 THEN set pinout = 1; ELSE原创 2017-05-16 21:39:56 · 2732 阅读 · 0 评论 -
MySQL使用控制语句实现行转列的几个实践
案例背景:按周统计周中每天销售额。要求结果如下图所示:常用方式如下:【1】子查询SELECT week_year, ( SELECT SUM(net_price) FROM goods_sale WHERE day_week = 2 AND week原创 2017-08-30 14:07:39 · 1090 阅读 · 0 评论 -
MySQL中group by子句与having实例分析
Group By语句从英文的字面意义上理解就是”根据(by)一定的规则进行分组(Group)”。 它的作用是通过一定的规则将一个数据集划分成若干个小的区域,然后针对若干个小区域进行数据处理。【1】语法格式如下:select [columns] from table_name [where..] group by [columns] [having ...]需要说明的是,在select指定的字段要么原创 2017-05-23 22:07:29 · 21152 阅读 · 2 评论 -
MySQL中定时任务的使用
【1】开启环境变量配置使用如下命令检测是否开启事件调度计划:show variables like '%event_scheduler%';如果现实为OFF,则可暂时用命令set global event_scheduler =1;开启。不过该改法在数据库重启后将会恢复为原来状态,要想数据库重启后也可以让 event_scheduler 开启,则需要在配置文件中设置 然后重启 MySQL ...原创 2019-10-01 17:48:50 · 1098 阅读 · 0 评论 -
数据库事务中调度串行化、冲突可串行化、前趋图(优先图)
延续上篇博文一文读懂Spring事务和MySQL事务与锁我们继续学习。通常数据库事务是并发执行的(如果你的数据库隔离级别非serializable)),但是这里需要注意两点:必须保证事务并发执行的正确性;必须用正确的方法调度执行事务的并发操作;这里就引入了一个概念:调度。【1】调度① 调度定义多个事务的读写操作按时间排序的执行序列:T1:r1(A)w1(A)r1(B)w1(B)......原创 2018-12-10 21:35:49 · 44311 阅读 · 4 评论 -
MySQL中库/表/字段/主键/用户操作示例与详解
下面关于字符的设置中 : [charset 等效于 character set ]【1】创建数据库和创建表创建数据库:create database `database` charset utf8;注意这里数据库名-database使用了反引号 `` ;如果不使用反引号,那么SQL语句不能使用关键字或者保留字。------------------------------.........原创 2016-10-14 09:59:18 · 1590 阅读 · 0 评论 -
MySQL中的数据备份与还原(导出导入)实践总结
数据备份与还原的常用方式:数据表备份,单表数据备份,SQL备份和 增量备份。【1】数据表备份不需要通过SQL备份,直接进入到数据库文件夹复制对应的表结构以及数据文件。以后还原的时候,直接将备份的内容放进去即可。数据表备份有前提条件:根据不同的存储引擎(MySQL进行数据存储的方式)有不同的区别。这里主要对比myisam和innodb:数据存储方式InnoDB:...原创 2017-06-12 18:39:15 · 4838 阅读 · 2 评论 -
MySQL生产问题实践总结
背景:将外部sql文件导入数据库。解决办法:Linux下修改my.conf;Windows下修改my-default.ini。添加(修改)如下配置:wait_timeout=2880000 interactive_timeout = 2880000 max_allowed_packet = 256M如果使用命令方式,只在当前会话有效,建议修改配置:sho...原创 2017-11-29 13:29:37 · 947 阅读 · 1 评论 -
MySQL与服务器时区问题实践总结
① 连接MySQLmysql -uroot -p② 切换数据库use information_schema;③查看数据库大小,单位为MBselect concat(round(sum(data_length/1024/1024),2), 'MB') as data from tables ④ 查看指定数据库大小,单位为MBselect concat(round(sum(data_length/102原创 2017-11-28 16:35:46 · 838 阅读 · 1 评论 -
MySQL数据库基础入门与常见操作
首先看数据库的定义高效的存储和处理数据的介质(介质包括磁盘和内存)。数据库基于存储介质的不同,分为两类:关系型数据库(SQL)和非关系型数据库(NoSQL:Not Only SQL)。关系型数据库:是一种建立在关系模型(数学模型)上的数据库。关系模型:一种所谓建立在关系上的模型,关系模型包含三个方面:① 数据结构:数据存储的问题,二维表(行和列)。 ② 操作指令集合:所有的SQL语句。 ③......原创 2016-11-08 11:24:46 · 1418 阅读 · 0 评论 -
MySQL 中exists与in及any的用法详解
【1】exists对外表用loop逐条查询,每次查询都会查看exists的条件语句。当 exists里的条件语句能够返回记录行时(无论记录行是多少,只要能返回),条件就为真 , 返回当前loop到的这条记录。反之如果exists里的条件语句不能返回记录行,条件为假,则当前loop到的这条记录被丢弃。exists的条件就像一个bool条件,当能返回结果集则为true,不能返回结果集则为 false。语...原创 2017-06-08 10:07:17 · 30651 阅读 · 7 评论 -
MySQL下使用SQL命令进行表结构与数据复制实践
【1】表结构复制首先是表结构的复制:create table 表名 like [数据库.]表名;-- 如果是同一个数据库下的表的复制,不需要添加数据库【2】表数据复制insert into new_table select * from [数据库.]old_table未完待续原创 2017-05-18 16:06:58 · 2352 阅读 · 1 评论 -
MySQL中事务基础入门详解
在数据库中,所谓事务是指一组逻辑操作单元,使数据从一种状态变换到另一种状态。为确保数据库中数据的一致性,数据的操纵应当是离散的成组的逻辑单元。当它全部完成时,数据的一致性可以保持,而当这个单元中的一部分操作失败,整个事务应全部视为错误,所有从起始点以后的操作应全部回退到开始状态。 事务由单独单元的一个或多个SQL语句组成,在这个单元中,每个MySQL语句是相互依赖的。而整个单独单元作为一个不可分割的整体,如果单元中某条SQL语句一旦执行失败或产生错误,整个单元将会回滚。所有受到影响的数据将返回到事原创 2017-06-18 17:37:44 · 2177 阅读 · 0 评论 -
MySQL中数值类型(列类型)与显示宽度
所谓的数据类型:对数据进行统一的分类。从系统的角度出发为了能够使用统一的方式进行管理,以便更好的利用有限的资源空间。SQL将数据分为了三大类:数值类型、字符串类型和时间日期型。如下图所示:【1】数值类型系统将数值类型分为整数型和小说型。【1.1】整数型存放整型数据,在SQL中考虑磁盘空间问题又细分为五类:Tinyint:迷你整型。一个字节存储,最多可表示256种状态(2 的八次方);Smalli......原创 2017-05-08 11:05:25 · 5114 阅读 · 0 评论 -
MySQL中数据插入与主键冲突解决方案
【1】主键冲突在插入数据的时候,有时候会遇到主键(唯一键)冲突的情况。下面讲述两种解决办法:① 更新原数据insert into 表名[(字段列表:包含主键)] values(值列表) on duplicate key update 字段 = 新值。示例如下 :insert into p_user (id,name,age,sex) VALUES(1,'luco',13,'b1y') -- 如果主原创 2017-05-18 13:19:33 · 8418 阅读 · 0 评论 -
MySQL中select 查询完整语法与子查询使用
select查询完整语法格式如下:selet[select 选项] 字段列表[字段别名] /* from 数据源[where条件字句][group by 字句][having 字句][order by 字句][limit 字句]【1】select选项:select对查出来的结果的处理方式; ① all :默认的,保留所有的结果; ② distinct:去重,将查出来原创 2017-06-02 16:08:36 · 7030 阅读 · 0 评论 -
认真学习MySQL中的几种范式设计
# 【1】范式概述## ① **范式简介****范式:Normal Format,它是英国人 E.F.Codd(关系数据库的老祖宗)在上个世纪70年代提出关系数据库模型后总结出来的,范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法。**>在关系型数据库中,关于数据表设计的基本原则、规则就称为范式。可以理解为,一张数据表的设计结构需要满足的某种设计标准的级别。要想设计一个结构合理的关系型数据库,必须满足一定的范式。范式是一种离散数学知识,目的是为了解决一种数据的原创 2017-05-16 14:53:44 · 1507 阅读 · 0 评论 -
MySQL中的校对集/大小写敏感/sql_mode实践
校对集:数据比较方式;必须在无数据前进行声明,如果有了数据再进行数据修改,那么修改无效!其有三种格式:_bin:binary,二进制比较,取出二进制位,一位一位进行比较,区分大小写;_cs:case sensitive,大小写敏感,区分大小写;_ci:case insensitive,大小写不敏感,不区分大小写。【1】查看数据库所支持的校对集show collation【2】对比不同校对集的原创 2017-05-07 11:26:39 · 2367 阅读 · 0 评论 -
MySQL事务中幻读实践
Oracle默认使用READCOMMITTED事务隔离级别,原创 2017-05-11 17:33:22 · 1614 阅读 · 1 评论 -
MySQL中的列类型之字符串类型总结
在SQL中,将字符串类型分为了六类:char,varchar,text,blob,enum和set。【1】定长字符串char磁盘(二维表)在定义结构的时候,就已经确定了最终数据的存储长度。Char(L):L代表length,可以存储的长度,单位为字符,最大长度值可以为255。char(4):在UTF8环境下,需要4*3=12个字节存储空间。【2】变长字符串varchar变长字符串在分配空间的时候按照...............原创 2017-05-09 12:32:53 · 6646 阅读 · 0 评论 -
MySQL - \g 和 \G用法与区别
【1】DOS环境下① \g可同时(单独)使用\g;其作用等效于分号—’;’ :② \G可同时(单独)使用\G;;/G 的作用是将查到的结构旋转90度变成纵向:可能会觉得在DOS下还不如默认显示呢,那么Linux下呢?【2】Linux环境下① \g单独使用\g可以同时使用\g;:select * from tb_sys_apk \g;② \G同时使用\G;可以单独使用\G:select *原创 2017-06-18 18:20:14 · 11063 阅读 · 1 评论 -
MySQL 中外键与使用详解
外键字段必须先是一个索引,否则将会先创建索引,然后才能创建外键。删除的时候必须先删除外键,才能删除索引。子表中外键字段数据要么为null,要么为父表中引用字段数据!【创建表的时候增加外键】此时创建的索引使用默认名字;创建的外键为表默认名字;create table my_foreign1(id int PRIMARY KEY auto_increment,name varchar(20)...原创 2017-06-07 14:05:38 · 5728 阅读 · 0 评论 -
MySQL - 系统函数和自定义使用详解
MySQL 中函数分为两类:系统函数和自定义函数。【1】系统函数系统定义好的函数,直接调用即可。任何函数都有返回值,而存储过程无返回值(可以用inout或out型参数带值出来)。点击查看常用函数(字符串函数) (http://blog.csdn.net/j080624/article/details/71078067)。字符串长度示例如下:length表示字节长度,与charset有关; cha原创 2017-06-29 10:52:02 · 1929 阅读 · 0 评论 -
MySQL中不同类型参数存储过程示例
① 创建存储过程声明变量时不加 @(如DECLARE id int unsigned DEFAULT 20 (非用户变量));② 但是无论从Mysql客户端下或者Navicat for MySQL ,使用变量参数(用户变量)要加 @ 符号如call proc1(@x);。③ 调用存储过程使用call procedure(param);navicat for mysql 工具下调用:call proc原创 2017-02-14 11:20:17 · 2765 阅读 · 0 评论 -
MySQL中常用函数之字符串函数使用详解
本篇博文记录MySql常用函数与应用实例。【1】字符串拼接函数将字符串直接拼接起来;CONCAT(str1,str2,...)Navicat 实例:select * from tb_user where user_name like CONCAT('%','演示','%')【2】添加分隔符的字符串拼接函数将字符串通过分隔符拼接起来;CONCAT_WS(separator,str1,str2,原创 2017-05-02 10:24:41 · 2040 阅读 · 1 评论 -
MySQL中常用函数之数学函数使用详解
(2).数学类 ABS (number2 ) //绝对值 BIN (decimal_number )//十进制转二进制 CEILING (number2 )//向上取整 CONV(number2,from_base,to_base) //进制转换 FLOOR (number2 )//向下取整 FORMAT (number,decimal_places) //保留小数位数 HEX (De原创 2017-07-05 11:06:48 · 553 阅读 · 0 评论 -
MySQL中表视图使用操作详解
【1】视图的定义视图:view,是一种有结构(有行有列)但是没结果(结构中不真实存放数据)的虚拟表,虚拟表的结构来源不是自己定义,而是从对应的基表中产生(视图的数据来源)创建视图后会自动从基表里面拉取数据到视图里面显示;视图是一张虚拟的表;视图一旦创建,系统会在视图对应的数据库文件夹下创建一个对应的结构文件–*.frm;使用视图主要是为了查询数据;【2】视图创建基本语法:create vi原创 2017-06-12 10:15:14 · 2482 阅读 · 1 评论 -
MySQL 中几种不同的子查询实践
子查询:sub query;查询是在某个查询结果之上进行的(即,一条select语句内部包含了另外一条或多条select语句)。【子查询分类】子查询有两种分类方式:按位置分类和按结果分类。① 按位置分类:子查询(select语句)在外部查询(select语句)出现的位置 1.from子查询:子查询跟在from之后; 2.where子查询:子查询出现在where条件中; 3.e原创 2017-06-08 09:05:58 · 6653 阅读 · 0 评论