自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 redis 实战02 全局ID

缺点 在上文中判断锁是否一致之后会阻塞,下图。这里我们用redis锁(就是sexnt)但还是有问题 就引入了 redisson。用在一些订单号,保证安全,唯一。

2025-10-27 19:01:39 178

原创 redis 实战学习01

判断shopJson是否为空。

2025-10-25 19:44:03 197

原创 MySQL 12 锁

意向表 就是查看表中是否有锁,来让表锁建立(有其他锁,表锁就不能建立)如果 write lock 可读可写, 其他会话 不可读不可写。间隙锁 (锁两个id之间如 1-5 不包含1,5)如果 read lock 不可写,其他会话可读。未提交的事务 可以增删改 ,但不能改表结构 如。表级锁 (只是把一个表锁住,使用频率高。意向共享锁 :当事务只读不写,生成。全局锁 将全部表给锁住 只能读。意向排他锁:当事务写,就生成。当不用索引搜索,会升级成表锁。与元数据锁一样 会自动生成。目的就保护数据一致性。

2025-10-16 18:13:39 216

原创 MySQL 11 触发器

当运行增删改时会记录日志。

2025-10-16 17:55:54 200

原创 MySQL 10 创建过程

全局变量就是在开启运行代码的地方是就有(也可以设)会话变量在关闭运行代码的地方就消失的变量。if (这里使用了 then)用户定义变量也可以理解为会话变量。可以理解为在MySQL创建函数。可以理解为C语言中的函数变量。

2025-10-16 17:52:05 116

原创 MySQL 09 视图

cascaded 会查看当前命令和与其相关联的(就是命令里其它视图创建命令)是否符合创建命令。视图就是建立新的表内容结构一样 (可以让别人只看表内容的一部分)增删改都可以直接进行。当开事务不结束,其他会话不能执行这里面的命令、local 只会查看当前命令是否符合创建命令。

2025-10-16 17:33:49 342

原创 MySQL 08 SQL优化

Using filesort 慢,意思是先走一遍二级索引,再到聚集索引。当删除中间数页不会变,直到一直删到小于50%,就会合并成2个页。当插入一个值序号小于14,它会从中间分裂插入多出来的排后面。可当数据很多的时候会很耗时间,所以这时可以使用。Using index 快 ,直接走聚集索引。SQL优化可以加快SQL的速度。但要倒序排列也可以设倒序索引。在数据少量时可以使用事务。order by 优化。count(建议不用)group by优化。

2025-10-16 17:22:27 206

原创 MYSQL 07 索引

搜素玩二级索引要回到聚集索引搜索内容,二级索引只能搜到id 除了联合索引。范围搜素 (他会使索引搜素失效,所以最好加= ,如> 改为>=)hash也使用(Memory),但不能定位其范围只取准确值。他增加了搜索便利,但是其增删改变慢,所以要选择查占主导的。B+tree 结构 数据都放在叶子节点。字符串不加单引号(会造成隐式转换,使索引失效)最左前缀法则 (是包含不是一定要在左边)为什么innoDB使用B+tree。SQL提示 (使其使用指定的索引)主要使用B+tree。

2025-10-14 10:44:22 403

原创 Mysql 06 进阶 存储引擎

InnoDB支持事务,有行锁,支持外键。特点存储在内存中,已被redis替代。InnoDB和MyISAM的区别。系统默认是innoDB。MySQL的体系结构。MyISAM引擎特点。

2025-10-11 16:22:21 220

原创 MySql 05 事务

保证MySQL数据安全,要不全部运行,要不全部失败。开启事务后运行通过后要commit。原子性,一致性,隔离性,持久性。失败要 rollback。

2025-10-11 15:29:59 168

原创 MySql 04 多表关系

一对多 (一张表对应另一张表是存在多个,例部门表对应员工表,一个部门对应有多个员工)相当于A B 要跟1234都要展示 但只有 A 3 ,B 2是正确的。就是select的条件里面有一个select。一对一 (两张表相对应是一一对应)多对多 (两张表对应连接是多个)就是几个表相关联几对几。

2025-10-11 15:00:33 207

原创 MySql 03

约束是作用于表中字段上的规则,用于限制存储在表中的数据。外键约束 (用于链接多个表之间)重要。

2025-10-11 14:42:11 182

原创 MYSQL 02

MySQL函数使用

2025-10-11 14:29:51 214

原创 串、数组、广义表

如果字符前一个与第一比较如“aaaab” b 前一个‘a’与第一个‘a’ 比较,相同next[j] =2依次前两个与第一二比较 (max)取最大。:是用来从一个字符串中找子串。next[j] : 算值。可以理解成c语言中的数组。

2025-03-27 19:19:05 532

原创 栈、队列的学习

MAXQSIZE:队列的可存放的大小。其实底层是由线性表和链表组成。

2025-03-26 18:46:51 457

原创 线性表03 -循环链表、双向链表

循环链表就是在原有的链表上,将尾节点的指针指向首届点。在单链表的基础上,加上一个指针,指向前一个结点。查找头节点和尾结点的空间复杂度。节点的加入指针改变的不同。而其他的基本没有变化。

2025-03-26 16:03:54 214

原创 数据结构-顺序表02-链式表-单链表

其结点有只有一个指针域。双链表 2个 循环链表 :首尾相连。定义结点指针p: LNode *p == LinkList p;要注意: L=L->next;将L指针转到下一个节点。从链表的头指针出发,顺next找 直到搜到 i 为止。其位置与物理无关 位置不可预测。: 是在链表的首元结点之前的附设的一个结点。是指链表中存储第一个数据元素a1的结点。每个节点由数据域和指针域两部分组成。定义链表L:LinkList L;是指向链表中第一个结点的指针。java的链表使用:和遍历。判断链表是否为空:、

2025-03-17 22:44:33 236

原创 数据结构-顺序表01

LocateElem(L,e,compare()) : 返回L中第1个与e满足compare()的数据元素的 “位序”。PriorElem(L,cur_e,&pre_e) : 返回cue_e数据元素的前一个值,若没有则pre_e没意义。NextElem(L,cur_e,&next_e) : 返回cue_e数据元素的后一个值,若没有则next_e没意义。ListDelete(&L,i,&e) 将删除 i 的位子 ,并用e返回,后面的前移,,长度减一。ListLength(L) : 返回L中的数据元素个数。

2025-03-15 21:11:52 680

原创 数据结构-计算数据复杂度

不同的代码其空间复杂度不一样,数值小,运行越快。(3)如果最高项存在且系数不是1,则直接改为1.(1) 用常数1取代运行时间中的所有加法常数。(2)计算数值时,只取最高阶项。

2025-03-13 22:52:01 154

原创 数据结构:二分查找 01

2. int mid =(i+j)>>>1 : 可以防止应i,j太大使mid变负数:电脑的加减是转化为二进制,其第一位数字表示是正是负 ,太大会改变它,所以用>>>1使其向后移一位,而达到 /2.1.i<=j : 如果是i<j 则会无限循环 ,如果要用i<j,则 j=muns.length;

2025-03-11 14:18:55 189

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除