JUST DO IT


  • 首页

  • 归档

  • 分类

  • 标签

  • 关于

  • 搜索

Oracle11g使用exp空表不导出问题

发表于 2022-02-11 | 分类于 数据库

问题分析

ORACLE 11g 用 exp 命令导出库文件备份时,只能导出来一部分表而且不提示错误。因为 Oracle 11g中有个新特性:新增了一个参数“deferred_segment_creation”,含义是段延迟创建,默认是 true。

如果这个参数设置为 true,新建了一个表 Table1,并且没有向其中插入数据,那么这个表不会立即分配 extent,也就是不占数据空间,即表也不分配 segment 以节省空间,所以这些表不会导出来。

阅读全文 »

JSON.stringify丢失key问题

发表于 2021-12-25 | 分类于 前端

问题复现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// 默认情况下数据是这样的
let signInfo = [
{
fieldId: 539,
value: undefined
},
{
fieldId: 540,
value: undefined
},
{
fieldId: 546,
value: undefined
},
]
// 经过JSON.stringify之后的数据,少了value key,导致后端无法读取value值进行报错
// 具体原因是`undefined`、`任意的函数`以及`symbol值`,出现在`非数组对象`的属性值中时在序列化过程中会被忽略
console.log(JSON.stringify(signInfo))
// '[{"fieldId":539},{"fieldId":540},{"fieldId":546}]'
阅读全文 »

无符号整数存储IP地址

发表于 2021-08-23 | 分类于 数据库

转自《MySQL如何有效的存储IP地址及字符串IP和数值之间如何转换》

当存储IPv4地址时,应该使用32位的无符号整数(UNSIGNED INT)来存储IP地址,而不是使用字符串。

通常,在保存IPv4地址时,一个IPv4最小需要7个字符,最大需要15个字符,所以,使用VARCHAR(15)即可。MySQL在保存变长的字符串时,还需要额外的一个字节来保存此字符串的长度。而如果使用无符号整数来存储,只需要4个字节即可。另外还可以使用4个字段分别存储IPv4中的各部分,但是通常这不管是存储空间和查询效率应该都不是很高(可能有的场景适合使用这种方式存储)。

相对字符串存储,使用无符号整数来存储有如下的好处:

  • 节省空间,不管是数据存储空间,还是索引存储空间
  • 便于使用范围查询(BETWEEN…AND),且效率更高

使用无符号整数来存储也有缺点:

  • 不便于阅读
  • 需要手动转换
阅读全文 »

BigDecimal

发表于 2021-08-23 | 分类于 Java基础
  1. 在需要精确的小数计算时再使用BigDecimal,BigDecimal的性能比double和float差,在处理庞大,复杂的运算时尤为明显。故一般精度的计算没必要使用BigDecimal。

  2. 尽量使用参数类型为String的构造函数。

  3. BigDecimal都是不可变的(immutable)的, 在每一次四则运算时,都会产生一个新的对象 ,所以在加减乘除运算时要记得要保存操作后的值。

阅读全文 »

LRU缓存机制实现

发表于 2021-07-08 | 分类于 算法

LRU:最近使用的放在前面,最近没用的放在后面。

Redis在内存达到最大限制的时候会使用LRU等淘汰机制,如果来了一个新的数,此时内存满了,就需要把旧的数淘汰,那为了方便移动数据,得使用链表类似的数据结构,再加上要判断这条数据是不是最新的或者最旧的那么应该也要使用hashmap等key-value形式的数据结构。

阅读全文 »

《Oracle查询优化改写》笔记(应用案例)

发表于 2021-06-08 | 分类于 数据库

《Oracle查询优化改写》笔记(基础语句)

《Oracle查询优化改写》笔记(高级查询)

提取不同位置字符串

1
2
3
4
5
6
SELECT 
ltrim(regexp_substr(v.msg,'(\[)([^]]+)',1,1),'[') 第一个串,
ltrim(regexp_substr(v.msg,'(\[)([^]]+)',1,2),'[') 第二个串,
ltrim(regexp_substr(v.msg,'(\[)([^]]+)',1,3),'[') 第三个串
msg
FROM v;
阅读全文 »

滑动时间窗口限流算法

发表于 2021-06-07 | 分类于 算法

任意10秒内,通过的次数不超过2次。

或者按照实现原理来说,任意通过2次内的时间差,都不超过10秒。

阅读全文 »

工作流引擎实现思路

发表于 2021-05-26 | 分类于 其他

工作流

  • 按顺序添加任意个审批人组成一个链表,最后加一个结束节点
  • 记录当前审批人,当审批完后,审批人向后移动一位
  • 当审批人对应结束节点时,流程结束
阅读全文 »
123…13
Try.Catch

Try.Catch

孤单而灿烂

102 日志
16 分类
26 标签
© 2017 — 2023 Try.Catch
由 Hexo 强力驱动
|
主题 — NexT.Gemini v5.1.4
本站访客数 人次 本站总访问量 次
0%