
数据库
张漂亮’s Blog
这个作者很懒,什么都没留下…
展开
-
通过MySQL查询判断是否含有子节点
其中,子节点数量的计算通过子查询来实现,即在当前表中查询父分类ID等于当前分类ID的记录数。如果子节点数量为0,则说明该分类没有子节点。查询出所有的根分类之后,我们需要进一步判断这些分类是否有子节点。我们可以通过查询该分类的ID在父分类ID字段中是否存在来判断其是否含有子节点。--parent_id:父分类ID,为整数类型,如果当前分类为根分类则该字段值为0。--我们需要查询所有的根分类,并判断它们是否含有子节点。--查询所有根分类并判断是否含有子节点。--id:分类ID,为自增长整数。转载 2024-01-12 10:38:02 · 391 阅读 · 0 评论 -
concat函数拼接字符串存在null
concat函数拼接字符串结果为null原创 2022-07-11 16:57:11 · 698 阅读 · 0 评论 -
mysql解析json串中的字段
使用mysql的内置函数JSON_EXTRACT(column, '$.key'),这个函数有两个参数,第一个参数column代表json列的列名;第二个参数key代表json字符串中的某一个key。举个栗子:如果mysql表中有一个字段是字符串类型的。比如:record表中有个 result 字段内容如下,想解析出highNum和midNum的值{"highNum":0,"rowNum":87986,"codeRowNum":67751,"midNum":8,"problemNum":10,"原创 2022-02-24 12:48:32 · 2628 阅读 · 0 评论 -
MySQL总结
redolog与binlog 一致性:两阶段提交ACID实现原创 2021-06-01 10:10:37 · 95 阅读 · 0 评论 -
MySQL中binlog和redo log的一致性问题
参考文章:MySQL中binlog和redo log的一致性问题MySQL中binlog和redo log的一致性问题本人目前在从事MySQL内核的开发和维护工作,以后会写一些MySQL的知识分享。关于MySQL中binlog和redo log的一致性问题,在网上看过一些文章,感觉不是特别清楚,所以自己总结后和大家分享一下,文章如有问题,欢迎指教。redo log 和 binlogredo log在MySQL InnoDB中,redo log是用来实现事务的持久性,即当事务在提交时,必须先将该事转载 2021-06-01 09:46:49 · 516 阅读 · 0 评论 -
redo日志的刷盘策略
参考文章: redo日志的刷盘策略我们想要提交一个事务了,此时就会根据一定的策略把redo日志从redo log buffer里刷入到磁盘文件里去。此时这个策略是通过innodb_flush_log_at_trx_commit来配置的,这个参数值共有三种策略。接下来一一为大家介绍1.当这个参数的值为0的时候,那么你提交事务的时候,不会把redo log buffer里的数据刷入磁盘文件的,此时可能你都 提交事务了,结果mysql宕机了,然后此时内存里的数据全部丢失。相当于你提交事务成功了,但是由转载 2021-06-01 09:16:51 · 401 阅读 · 0 评论 -
Read Committed 为什么不能防止不可重复读现象
https://www.cnblogs.com/hi3254014978/p/12721152.htmlMySQL中MVCC的正确打开方式(源码佐证)转载 2021-05-14 09:49:37 · 271 阅读 · 0 评论 -
mysql优化(一)
1.数据类型(1)字符类型char(固定长度,默认删除字符串末尾的空格);varchar;blob(二进制);text;(2)日期类型date:timeStamp(常用);(3)枚举类型用枚举类型代替一些字符串类型,比如性别等;(4)特殊类型IP地址本质是32位无符号整数而不是字符串,用 INET_ATON() 和 INET_NTOA() 将ip地址转成整数存储。2. MySQL三范式与反范式一般情况下根据业务逻辑,将范式与反范式混合使用。https://blog.cs原创 2021-02-16 11:26:28 · 169 阅读 · 1 评论 -
mysql 存储 longtext 与 longblob数据类型的区别
最近项目中同时用到了存储大文本的两种情况,做一小结。mysql数据类型参考连接:mysql数据类型1.将文件存储到 mysql 中,存储为二进制数据。mysql 的表字段类型选择了LONGBLOB。在java中生成的实体类对应的字段类型为 byte[ ];CREATE TABLE `tmp_jmeter_case` ( `ID` int(16) NOT NULL AUTO_INCREMENT COMMENT '主键', `JMETER_CASE_NAME` varchar(100) DEFA原创 2020-06-12 11:58:16 · 14487 阅读 · 0 评论 -
oracle数据库用户名密码忘记、用户被锁定的解决方法
oracle数据库用户名密码忘记、用户被锁定的解决方法点击开始菜单,输入 cmd 打开 DOS 窗口.输入: sqlplus/nolog 回车。输入:conn/as sysdba 回车,返回“已连接”。 输入:“alter user 用户名 identified by 新密码;” 回车。(注意:此处是sql 语句,结尾处一定要加分号,否则无法执行,只返回2,再执行一次返回3…...原创 2018-02-13 14:38:02 · 1135 阅读 · 0 评论