mysql
文章平均质量分 92
mysql
shadow___h
这个作者很懒,什么都没留下…
展开
-
数据库事务的简单理解
文章目录数据库事务的简单理解事务的概念事务的隔离级别1. 因为并发而可能出现的问题2. 为了权衡并发和隔离的矛盾,于是定义了事务的四个隔离级别如何去实现数据库中的隔离事务隔离级别的实现方式 (LBCC lock-Based Concurrent Control)1. 共享锁2.排他锁3.意向共享锁4.意向排他锁锁的算法1. 记录锁 (Record Locks)2. 间隙锁(Gap Locks)3. 临建锁(Next-key-locks)事务隔离级别的实现方式(MVCC Multi-Version Conc原创 2021-03-27 15:07:41 · 559 阅读 · 0 评论 -
数据库索引的简单理解
文章目录数据库索引的简单理解数据库中的数据放在哪里MySQL 索引为啥要使用索引索引使用的条件B树B+树B+树之聚合索引B+树之非聚合索引hash索引设置主键为自增int型索引优化之最左前缀原则数据库索引的简单理解索引其实就是一种排序的数据结构数据库中的数据放在哪里.frm 表的结构信息.ibd 存储索引和文件信息数据库中数据一般都存放在硬盘中,而不是内存中,每读取依次数据中的数据,叫相当于要操作一次I/O操作,速度较慢。 应用程序发起I/0操作去调动内核,找到对应的驱动程序把数据加原创 2021-03-26 20:37:10 · 283 阅读 · 0 评论 -
sql语句基本的用法
基本增删查改createcreate database 数据库名 ;// 创建一个数据库create table { 列名 类型 约束条件, 列名 类型 约束条件, 列名 类型 约束条件, 列名 类型 约束条件 } ;//约束条件根据自己设计的表来实现dropdrop table 表名;//删除一个表drop database 数据库名; //删除一个数据库// drop 是一个非常危险的操作alteralter table 表名 change 原列原创 2020-11-11 16:37:23 · 539 阅读 · 0 评论 -
简单说一下JDBC
可以简单的理解为用java语言来操控数据库的增删查改。java自带的一组数据库的操作的API,这组API相当于涵盖了各种数据库操作的操作方式,把不同的数据库的API统一到一起了。java自身来完成JDBC API和具体数据库API之间的转换。不同的数据库需要分别提供不同的驱动程序,在java中这样的驱动程序是一个独立的“jar包”。我们在maven仓库中找到jar包,注意我们jar包版本必须和mysql服务器版本一致。具体的jdbc是比较简单的import com.mysql.jdbc.jdbc2原创 2020-06-01 22:25:08 · 160 阅读 · 0 评论 -
mysql中的事务
1 事物的概念事务指逻辑上的一组操作,组成这组操作的各个单元,要么全部成功,要么全部失败。也就是说把一组操作全部封装起来了。在不同的环境中,都可以有事务。对应在数据库中,就是数据库事务。2 为啥使用事物可以从转钱这个操作来说,当A需要转钱给B1000元时,有两个步骤,A账户减少1000元,B账户增加1000元,当第一个步骤操作成功,但第二个步骤操作失败呢,在这种情况下我们就需要使用事物,将这两个操作封装起来,用来避免上面的问题。3 事物的基本特性原子性:事物的若干个操作,要木全部操作成原创 2020-06-01 00:12:16 · 167 阅读 · 0 评论 -
mysql中的索引
1 什么是索引索引是一种特殊的文件,包含着对数据表里所有记录的引用指针。可以对表中的一列或多列创建索引,并指定索引的类型,各类索引有各自的数据结构实现。2 索引是为了解决什么问题数据库中的表、数据、索引之间的关系,类似于书架上的图书、书籍内容和书籍目录的关系。索引所起的作用类似书籍目录,可用于快速定位、检索数据。索引对于提高数据库的性能有很大的帮助。3 索引在什么情况下应用数据量较大,且经常对这些列进行条件查询。 该数据库表的插入操作,及对这些列的修改操作频率较低。当满足原创 2020-05-31 23:47:00 · 140 阅读 · 0 评论 -
msql语句的简单应用(4)
分页查询select 列名 from 表名 limit 想要得到结果的数目(这个是从开始到数目)select 列名 from 表名 limit 结果的数目 offset 其实记录的下标1.group by把查询到的结果按照一定的规则分组,我们可能会得到多个分组。group by 也可以搭配限制条件来使用。下面我们来讲述比较超级重要的一点联合查询/多表查询这种查询方式,若不加限制条件的话,得到的结果便是两表的笛卡尔积。我们构建两张表,学生表和班级表。![在这里插入图片描述](http原创 2020-05-29 22:35:41 · 103 阅读 · 0 评论 -
mysql中的聚集函数
函数说明:COUNT返回查询到的数据的 数量SUM 返回查询到的数据的 总和,不是数字没有意义AVG 返回查询到的数据的 平均值,不是数字没有意义MAX返回查询到的数据的 最大值,不是数字没有意义MIN返回查询到的数据的 最小值,不是数字没有意义。注释:count 这个函数是不统计为null的。...原创 2020-05-28 12:48:58 · 140 阅读 · 0 评论 -
mysql中表的设计
数据库中表的关系可以具体的分为三种1.一对一关系可以理解为一个学生一个学号2.一对多关系一个班级多个学生因为在数据库中是没有数组这个概念的。因此在在数据库中就必须设置两个表来对应这种关系。3.多对多关系(这个不是数学中的映射关系)学生选课一个学生可以选几门课,一门课可以被多个学生选择,这种情况下我们需要三个表来描述这个关系,选课表,学生表,课表,选课表来作为中间表来连接学生表和课表。有些多对多关系可能需要多组表去描述,具体关系具体设计表。...原创 2020-05-27 18:21:49 · 319 阅读 · 0 评论 -
MySql中一些语句的简单应用(3)
1.修改update 表名 set 列名 = 新的值 where 筛选条件;注释:可以同时指定多个列修改的表达式不定,可以更加复杂修改数据的时候,数据不可以超过指定列的数据类型的范围2.删除delete from 表名 where 删除条件删除操作是非常危险的,一旦数据被删除了。通过常规手段是无法恢复的。3.我们讲述一些约束条件,这个是为了在往表中插入数据的时候,数据库会针对数据进行一系列的校验,如果发现插入的数据不符合描述中的校验规则,就会插入失败,这些约束条件可以更好的保证数据的正常性。原创 2020-05-27 18:07:17 · 147 阅读 · 0 评论 -
MySQl中一些语句的简单介绍(2)
我们这篇介绍的是数据库中一些关于表的操作语句1.插入(1): 全列插入insert into 表名 values(对应的数据);(2):指定列插入insert into 表名 (若干个指定列) values(对应的数据);没有被插入的默认列就会被填充成NULL。(3): 一次插入多条记录insert into 表名 values (对应的数据),(~~~~);我们构建一个表,然后用构建的表简述下列的2.全列查找select * from 表名;3.指定列查找select 列名 fro原创 2020-05-25 19:10:17 · 167 阅读 · 0 评论 -
MySql中一些语句的简单应用(1)
我们这些语句都是都是再这里面进行应用我们需要强调一点,大多的数据库语句的最后面都是以";"这个字符来结尾的。1.查看一个数据库show databases;2.创建一个数据库create database 数据库名;create database if not exists 数据库名;(看创建的数据库是否存在,若是存在,便不会创建数据库)3.使用数据库use 数据库名;(在MySQl数据库中是无法看出来你当时使用的那个数据库)其实这种情况下就已经进入这个数据库了。4.删除数据库drop原创 2020-05-25 17:48:33 · 178 阅读 · 0 评论 -
mysql中事务的隔离性
msql中事务的五个属性1 原子性一个事务是一个不可分割的工作单位,要木全都做了,要木全都不做了2 一致性事物执行前后,数据处于合法状态3 持久性事物执行完毕后,数据就被持久修改(写到磁盘中了)4 隔离性多个事物并发执行的时候,事物之间不能相互干扰隔离性和并发是相悖的隔离是为了保证数据的准确并发是为了提高事务执行的效率,如果多个事务之间隔离性越强,并发程度越低,效率就越低;如果多个事务之间的隔离性越弱,并发程度越高,效率就越低。我们为了满足数据准确要求的前提下就要尽可能的提高效率原创 2020-06-16 00:15:46 · 141 阅读 · 1 评论