随笔分类 - 关系型数据库 / mysql
摘要:1.MySQL大小写敏感规则 MySQL中,一个库会对应一个文件夹,库里的表会则以文件的方式存放在文件夹内,所以,操作系统对大小写的敏感性决定了数据库和表的大小写敏感(MySQL有一个只读的系统变量lower_case_file_system,其值反映的正是当前文件系统是否区分大小写)因此:在Win
阅读全文
posted @ 2025-04-26 17:37
liftsail
摘要:本文详细介绍四种事务隔离级别,并通过举例的方式说明不同的级别能解决什么样的读现象。并且介绍了在关系型数据库中不同的隔离级别的实现原理。 在DBMS中,事务保证了一个操作序列可以全部都执行或者全部都不执行(原子性),从一个状态转变到另外一个状态(一致性)。由于事务满足久性。所以一旦事务被提交之后,数据
阅读全文
posted @ 2024-06-13 17:42
liftsail
摘要:“读现象”是多个事务并发执行时,在读取数据方面可能碰到的状况。先了解它们有助于理解各隔离级别的含义。其中包括脏读、不可重复读和幻读。 脏读 脏读又称无效数据的读出,是指在数据库访问中,事务T1将某一值修改,然后事务T2读取该值,此后T1因为某种原因撤销对该值的修改,这就导致了T2所读取到的数据是无效
阅读全文
posted @ 2024-06-13 11:30
liftsail
摘要:存储引擎 百度百科是这样定义存储引擎的:MySQL 中的数据用各种不同的技术存储在文件(或者内存)中,这些不同的技术以及配套的相关功能在 MySQL 中被称作存储引擎。 简单来说就是不同的存储引擎,我们的数据存储的格式也会不一样。就好比图片有不同的格式,比如:.jpg, .png, .gif 等等…
阅读全文
posted @ 2024-06-04 18:00
liftsail
摘要:-- 一、查询数据库名称为db_name的所有表 SELECT t.table_catalog,t.table_schema,t.table_name,table_type FROM information_schema.TABLES t where t.table_schema='db_name'
阅读全文
posted @ 2024-05-31 17:52
liftsail
摘要:一、关联查询 1、概念 在查询数据时,所需要的数据不只在一张表中,可能在两张或多张表中。这个时候,需要同时操作这些表来查询数据,即关联查询。 关联查询所涉及到的表与表之间都会存在有关联的字段,如员工表的部门编号和部门表的部门编号。 2、笛卡尔积 在做关联查询时,数据库会使用某一张表中的每一条记录都与
阅读全文
posted @ 2024-05-31 17:47
liftsail
摘要:场景1 field函数的使用 field(str,str1,str2,str3,str4…)字段str按照字符串1、字符串2、字符串3、字符串4的顺序返回查询到的结果集。如果表字段值str不存在,放在结果集的最前面 subString 如七年级1班,想要截取第一个字符,就是substring(use
阅读全文
posted @ 2024-05-31 15:26
liftsail
摘要:SELECT SUBSTRING_INDEX( SUBSTRING_INDEX( '12,2,3,4,5,6,7,8,9,6', ',', id ), ',',- 1 ) AS num, id FROM sequence_id WHERE id <= LENGTH( REPLACE ( '1,2,3
阅读全文
posted @ 2024-05-31 14:35
liftsail
摘要:索引被用来快速找出在一个列上用一特定值的行。没有索引,MySQL不得不首先以第一条记录开始并然后读完整个表直到它找出相关的行。 表越大,花费时间越多。如果表对于查询的列有一个索引,MySQL能快速到达一个位置去搜寻到数据文件的中间,没有必要考虑所有数据。 如果一个表有1000行,这比顺序读取至少快1
阅读全文
posted @ 2024-05-31 11:38
liftsail
摘要:在写SQL 条件语句时经常用到 不等于 != 的筛选条件。 此时要注意此条件会将字段为 Null 的数据也当做满足不等于的条件而将数据筛选掉。 例:表A A1 B1 1 0 2 1 3 Null 执行如下查询: SELECT * FROM A WHERE B1 != 1; 得到的结果如下: A1 B
阅读全文
posted @ 2024-05-31 10:38
liftsail
摘要:日常开发,运维中,经常会出现误删数据的情况。误删数据的类型大致可分为以下几类: 使用 delete 误删行 使用 drop table 或 truncate table 误删表 使用 drop database 语句误删数据库 使用 rm 命令误删整个 MySQL 实例。 不同的情况,都会有其优先的
阅读全文
posted @ 2024-05-31 10:32
liftsail
摘要:基本概念 binlog是Mysql sever层维护的一种二进制日志,与innodb引擎中的redo/undo log是完全不同的日志;其主要是用来记录对mysql数据更新或潜在发生更新的SQL语句,记录了所有的DDL和DML(除了数据查询语句)语句,并以事务的形式保存在磁盘中,还包含语句所执行的消
阅读全文
posted @ 2024-05-31 10:17
liftsail
摘要:正文首先看下默认值的情况 1. NULL 与空字符存储上的区别表中如果允许字段为 NULL,会为每行记录分配 NULL 标志位。NULL 除了在每行的行首存有 NULL 标志位,实际存储不占有任何空间。如果表中所有字段都是非 NULL,就不存在这个标示位了。网上有一些验证 MySQL 中 NULL
阅读全文
posted @ 2023-02-06 14:58
liftsail
摘要:一、NULL,空值,数字,汉字,字母 根据上边的实操可以清楚看出: 空值(Null)的长度是 Null,不确定占用了多少存储空间,但是占用存储空间的 空字符串('')的长度是0,是不占用空间的 字母和数字每个都占用一个长度 汉字在字段中存储一个字的长度为3 二、区别 在进行 count() 统计某列
阅读全文
posted @ 2023-02-06 14:54
liftsail
摘要://方法一 select * from house where roomid = 21 and ((startTime >= to_Date('2021-08-14 00:00:00','yyyy-MM-dd hh24:mi:ss') AND startTime <= to_Date('2021-0
阅读全文
posted @ 2022-09-02 14:26
liftsail
摘要:1:事务事务:一组逻辑操作单元,使数据从一种状态变换为另一种状态。 逻辑操作单元: 一个或者多个DML操作。 事务处理(事务操作):保证所有的事务都作为一个工作单元来执行,即使出现了故障,都不能改变这种执行方式,当在一个事务中执行多个操作的时候,要么所有的事务都被提交(commit),那么这些修改就
阅读全文
posted @ 2022-08-30 14:12
liftsail
摘要:索引的种类索引有哪几种类型?主键索引:数据列不允许重复,不允许为NULL,一个表只有一个主键。唯一索引:数据列不允许重复,允许为NULL,一个表允许多个列创建唯一索引。普通索引:基本的索引类型,没有唯一性的限制,允许为NULL值。全文索引:是目前搜索引擎使用的一种关键技术,对文本的内容进行分词、搜索
阅读全文
posted @ 2022-08-30 13:22
liftsail
摘要:select *,(CASE WHEN ((SELECT now()) BETWEEN start_time and end_time) THEN '中间' when ((SELECT now()) < start_time) then '之前' ELSE '结束' END) as paper_st
阅读全文
posted @ 2022-07-30 15:35
liftsail
摘要:SELECT cast(@rank := @rank+1 as char) as rowNum,a.* from (select oup.user_name as userName,oup.user_id as userId,oup.student_sex as studentSex,op.Intr
阅读全文
posted @ 2022-07-28 15:52
liftsail
摘要:1:按照顺序增加序号 ,防止序号出现小数点,增加强转类型限制。 select cast(@currank:=@currank+1 as char) as rank_number,s.* from stuscore s,(select @currank:=0)t where s.subject='数学
阅读全文
posted @ 2022-05-17 17:13
liftsail

浙公网安备 33010602011771号