
mysql
文章平均质量分 80
缘聚则合缘灭则散
这个作者很懒,什么都没留下…
展开
-
一、MYSQL概述
一、数据存储方式的演变人们从古至今都有存储数据的需求,存储方式是按照下面的方式演变的。1. 人工管理阶段很久很久以前,人们把数据存储在动物骨头上,后来存储在竹片上,再后来存到纸上,直到近代发明了磁带、留声机等载体,不过这些都是依赖人工进行整理和保存的,特点是效率低下、错误率高、查找不方便等。2. 文件系统阶段后来人们发明了计算机,为了管理各种数据,人们发明了一种叫文件系统的东西,可以方便...转载 2019-11-20 16:54:51 · 1080 阅读 · 0 评论 -
二、 SQL介绍及数据定义DDL详解
命令使用注意事项我们知道MySQL的基本运行过程就是:通过客户端程序发送命令给服务器程序,服务器程序按照接收的命令去操作实际的数据。在我们使用黑框框启动了MySQL客户端程序之后,界面上会一直显示一行mysql>的提示符,你可以在它后边输入我们的命令然后按一下回车键,在书写命令的时候需要注意下边这几点:命令结束符号。在书写完一个命令之后需要以下边这几个符号之一结尾:;\g\G...转载 2019-11-20 21:05:30 · 427 阅读 · 0 评论 -
三、MYSQL 约束性条件(列的属性)
一、什么是约束约束英文:constraint约束实际上就是表中数据的限制条件二、约束作用表在设计的时候加入约束的目的就是为了保证表中的记录完整和有效比如name字段中要让其用户名不重复,这就需要添加约束。三、约束种类非空约束(not null)默认约束(default)唯一性约束(unique)主键约束(primary key) PK外键约束(foreign key) FK...转载 2018-11-06 11:12:23 · 862 阅读 · 0 评论 -
四、mysql 插入、更新、删除
准备工作本集中要唠叨的是对表中数据的操作,首先需要确定用哪个表来演示这些操作,本着勤俭节约的精神,我们还是复用之前用过的first_table表,只不过这个表快被玩坏了,我们把它删掉重建一个,一切重新开始:对于first_table表来说,我们保留了两个列,一个是INT类型的first_column列,另一个是VARCHAR(100)类型的second_column列。插入数据在关系型数...转载 2019-11-25 11:10:12 · 323 阅读 · 0 评论 -
五、mysql查询语句(一)
上集回顾上集我们介绍了在MySQL客户端书写命令的一些注意事项以及操作数据库的一些语句,并且创建了一个名为xiaohaizi的数据库。表的操作数据库建好之后,我们就可以接着创建真正存储数据的表了。创建表的时候首先需要描述清楚这个表长什么样,它有哪些列,这些列都是用来存什么类型的数据等等,这些对表的描述称为表的结构。有了表的结构之后,我们就可以着手把数据塞到这个表里了。表中的每一行也叫做一条记...转载 2019-11-21 21:22:41 · 307 阅读 · 0 评论 -
六、mysql查询(二)
过滤数据我们上边介绍的student_info、student_score表中的记录都很少,但是实际应用中的表里可能存储几千万条,甚至上亿条记录。而且我们通常并不是对所有的记录都感兴趣,只是想查询到符合某些条件的那些记录。比如我们只想查询名字为范剑的学生基本信息,或者计算机学院的学生都有哪些什么的,这些条件也被称为搜索条件或者过滤条件,当某条记录符合搜索条件时,它将被放入结果集中。简单搜索条件...转载 2019-11-25 21:59:02 · 728 阅读 · 0 评论 -
七、mysql聚合函数
mysql只有五个聚合函数。数据准备:mysql> CREATE TABLE users(-> id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,-> username VARCHAR(20) NOT NULL,转载 2018-11-13 21:15:52 · 1111 阅读 · 0 评论 -
八、分组查询(group by)
本文转载至:https://www.jianshu.com/p/fb1c7bc4da39一、概要Group By语句从英文的字面意义上理解就是“根据(by)一定的规则进行分组(Group)”。它的作用是通过一定的规则将一个数据集划分成若干个小的区域,然后针对若干个小区域进行数据处理。 如果在查询的过程中需要按某一列的值进行分组,以统计该组内数据的信息时,就要使用group by子句。不管sel...转载 2019-11-26 15:23:07 · 1859 阅读 · 0 评论 -
九、mysql联合查询(union、union all)
将两个表中的数据按照一定的查询条件查询出来后,将结果合并到一起显示,这时就需要用到union和union all关键字来实现这样的功能。一、数据准备准备两张表,一张存储学生信息,一张存储学生成绩表1 学生信息表:CREATE TABLE student_info(number INT PRIMARY KEY COMMENT ‘学号’,NAME VARCHAR(20) COMMENT ‘...转载 2018-11-15 22:19:12 · 1078 阅读 · 0 评论 -
十、mysql子查询
`MySQL子查询是嵌套 查询(如SELECT,INSERT,UPDATE或DELETE)中的查询。 另外,MySQL子查询可以嵌套在另一个子查询中。MySQL子查询称为内部查询,而包含子查询的查询称为外部查询。 子查询可以在使用表达式的任何地方使用,并且必须在括号中关闭。` 嵌套查询的工作方式是:先处理内查询,由内向外处理;外层查询利用内层查询的结果,嵌套查询不仅仅可以用于父查询se...转载 2018-11-14 15:42:30 · 1114 阅读 · 0 评论 -
十一、mysql连接查询
前言我们使用SQL查询不能只使用很简单、最基础的SELECT语句查询。如果想从多个表查询比较复杂的信息,就会使用高级查询实现。常见的高级查询包括多表连接查询、内连接查询、外连接查询与组合查询等,今天我们先来学习最常用、面试也很容易被问到的连接查询。我们今天以一个简单的学生信息表(学生ID、学生姓名、学生性别)与一个学生成绩表(学生ID、学生成绩、成绩等级)作演示:student_info表:...转载 2018-11-21 10:25:58 · 760 阅读 · 0 评论 -
十二、mysql帮助的使用
在 MySQL 使用过程中, 可能经常会遇到以下问题:某个操作语法忘记了, 需要快速查找。当前版本上, 某个字段类型我们想快速知道它的取值范围?当前版本上, 都支持哪些函数? 希望有例子能快速入门。当前版本上, 是否支持某个功能?对于上面列出的各种问题, 我们可能想到的办法是查找 MySQL 的文档。 不错, 这些问题在MySQL 官方文档中都可以很清楚地查到, 但是却要耗费大量的时间和...转载 2019-11-26 19:21:19 · 116 阅读 · 0 评论 -
十三、mysql索引
转载至链接:https://blog.youkuaiyun.com/alex_xfboy/article/details/82818753大家都知道索引的重要性,基本用法在上章《最全面的mysql索引知识大盘点》已分享过,本章主要是探索索引的底层实现原理。当然了,我们还是以mysql为基准进行探讨。目录1.物理磁盘知识1.1基本概念1.2硬盘中的数据1.3磁盘的读写原理1.5磁盘的读取响应时间...转载 2019-11-27 17:17:04 · 216 阅读 · 0 评论 -
十四、mysql语句执行过程和存储引擎
MySQL命令执行过程数据库实例我们回过头来再仔细想想使用MySQL的完整过程:启动MySQL服务器程序。启动MySQL客户端程序并连接到服务器程序。在客户端程序中输入一些命令语句发送到服务器程序,服务器程序收到这些请求后,会根据请求的内容来操作具体的数据。也就是说,MySQL服务器程序才是真实数据的管理者,它负责解析各个客户端发来的各种请求并返回相应的执行结果!我们知道计算机很牛逼...转载 2019-11-27 23:36:40 · 395 阅读 · 0 评论 -
十六、mysql事务
一、概念事务:就是保证一组数据库操作,要么全部成功,要么全部失败。在mysql中,事务支持是在引擎层实现的。mysql是一个支持多引擎的系统,单不是所有引擎都支持事务,如MyISAM引擎、memory引擎就不支持事务,InnoDB、BDB支持事务。以银行转账业务来理解事务:...原创 2018-11-26 10:33:02 · 205 阅读 · 0 评论 -
mysql事件
1 事件简介事件(event)是MySQL在相应的时刻调用的过程式数据库对象。`一个事件可调用一次,也可周期性的启动,它由一个特定的线程来管理的,也就是所谓的“事件调度器”`。事件和触发器类似,都是在某些事情发生的时候启动。当数据库上启动一条语句的时候,触发器就启动了,而事件是根据调度事件来启动的。由于他们彼此相似,所以事件也称为临时性触发器。事件取代了原先只能由操作系统的计划任务来执行的工...转载 2018-12-06 16:00:10 · 158 阅读 · 0 评论 -
mysql自定义函数
一、概述1 MySQL存储过程和函数过程和函数,它们被编译后保存在数据库中,称为持久性存储模块(Persistent Stored Module,PSM),可以反复调用,运行速度快。1.1 存储过程存储过程是由过程化 SQL 语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,因此称它为存储过程,使用时只要调用即可。1.2 函数这里指自定义函数,因为是用户自己使用过程化 SQL...转载 2018-12-06 15:29:28 · 2275 阅读 · 0 评论 -
mysql存储过程
存储过程简单的说,就是一组SQL语句集,功能强大,可以实现一些比较复杂的逻辑功能,类似于JAVA语言中的方法;ps:存储过程跟触发器有点类似,都是一组SQL集,但是存储过程是主动调用的,且功能比触发器更加强大,触发器是某件事触发后自动调用;...原创 2018-12-05 10:50:16 · 304 阅读 · 0 评论 -
mysql触发器
MySQL包含对触发器的支持。触发器是一种与表操作有关的数据库对象,当触发器所在表上出现指定事件时,将调用该对象,即表的操作事件触发表上的触发器的执行,执行触发器中定义的语句集合,满足触发条件时,由数据库自动调用执行,不需要手动调用。触发器的特性:1、有begin end体,begin end;之间的语句可以写的简单或者复杂2、什么条件会触发:I、D、U3、什么时候触发:在增删改前或者后...转载 2018-12-02 20:37:24 · 1831 阅读 · 0 评论 -
mysql行锁
一、概述mysql中并不是所有的存储引擎支持行锁,其中InnoDB引擎是支持行锁的,当然该引擎也是支持表锁的。InnoDB引擎中的事务有四大特性(原子性、一致性、隔离型、持久性),数据库为了维护这些性质,尤其是一致性和隔离性(保证事务与事务之间相对独立,互不干扰),底层一般使用加锁这种方式。同时数据库又是个高并发的应用,同一时间会有大量的并发访问,如果加锁过度,会极大的降低并发处理能力。所以对...转载 2018-11-29 22:15:20 · 2224 阅读 · 0 评论 -
mysql锁-表锁
现在的很多软件都是多用户,多程序,多线程的,对同一个表可能同时有很多人在用,为保持数据的一致性,所以提出了事务的概念。事务是在引擎层支持的,但是mysql中只有InnoDb和BDB等引擎支持事务,MyISAM、Memory等引擎并不支持事务。没有事务该如何保证多用户同时操作数据库时数据的正确性呢? 这个要用到另外一种技术叫做LOCK !并且多事务并发处理也可能存在数据丢失问题,即最后一个事务对...转载 2018-11-29 16:44:11 · 1010 阅读 · 0 评论 -
mysql视图
摘要: 视图:mysql中的视图,视图与表有很多相似的地方,视图也是由若干个字段以及若干条记录构成,视图也可以作为select语句的数据源。视图中保存的仅仅是一条select语句,保存的是视图的定义,并没有保存真正的数据。视图中的源数据都来自于数据库表,数据库表称为基本表或者基表,视图称为虚表。视图是MySQL 5.0中增加的三大新功能之一(另外两个是存储过程与触发器),也是一般稍微“高级”一点...转载 2018-11-20 11:38:48 · 362 阅读 · 0 评论 -
JDBI官网翻译版
JDBI:便捷的JDBC抽象 JDBI是一个使用方便的SQL开发库,用符合Java语言习惯的集合、Bean等方式,提供关系数据库访问接口,同时保留了JDBC类似的信息。JDBI提供了链式风和SQL对象两种风格的API。转载 2017-08-23 12:47:05 · 1013 阅读 · 0 评论 -
mysql外键
mysql foreign key(外键) 说明与实例一,什么是foreign key,及其完整性 个人觉得,foreign key就是表与表之间的某种约定的关系,由于这种关系的存在,我们能够让表与表之间的数据,更加的完整,关连性更强。关于完整性,关连性我举个例子,大家就会明白了。 有二张表,一张是用户表,一张是订单表: 1,如果我删除了用户表里的用户,那么订单表里面根这个用户有关的数据,就成转载 2017-02-08 22:58:52 · 458 阅读 · 0 评论