当前位置: 首页 > 面试题库 >

对于整数类型的主键,为什么避免空白很重要?

松和安
2023-03-14
问题内容

我正在为表生成代理键,由于我的hi / lo算法,每次重新启动/重新启动计算机时,可能会出现间隙。

T1: current hi = 10000000 
    (sequence being dished out .. 1 to 100)
       Assume that current sequence is 10000050

T2: restart system.

T3: System gives out the next_hi as 10000100 
    (sequence being dished out now ranges from 101 to 200)

T4: Next request for a key returns 100001001

从主键或索引内部结构的角度来看,序列中没有间隙为什么很重要?我问这是为了更深入地了解mysql


问题答案:

从主键或索引内部结构的角度来看,为什么在序列中没有空缺很重要?

这并不重要-是什么让您相信呢?
与主键有关的所有事情是,它对于表中的所有数据都是唯一的。值是什么,或前后的记录是否为顺序值都无所谓。



 类似资料:
  • 我试过用 但它不能用于像3141592653589793238462643383279502884197169399375这样的数字,我最多需要10^80。你知道吗?让我知道。非常感谢。

  • 问题内容: 通常我会尽可能避免转换类型,因为我认为这是不良的编码实践,并且可能会导致性能下降。 但是,如果有人要我解释为什么会这样,我可能会像前灯中的鹿一样看它们。 那么,为什么/何时铸造不好? 它对于Java,C#,C ++是通用的,还是每个不同的运行时环境都按照自己的方式处理? 欢迎使用任何语言的细节,例如为什么在c ++中不好? 问题答案: 您已经用三种语言标记了这三种语言,答案在三种语言之

  • 在React中,我尝试了两种方法: 然后更改状态this.setState(this.state) 克隆状态,更改状态克隆,然后更改此.setState(stateClone) 它们都起作用,产生相同的结果。为什么建议(在文档中)设置为状态克隆(使用Object.assign),而不是设置为状态本身?状态的对象标识在React中重要吗(没有Redux)?似乎只要调用setState,不管状态对象标

  • 条款25: 避免对指针和数字类型重载 快速抢答:什么是“零”? 更明确地说,下面的代码会发生什么? void f(int x); void f(string *ps); f(0); // 调用f(int)还是f(string*)? 答案是,0是一个int——准确地说,一个字面上的整数常量——所以,“总是”f(int)被调用。这就是问题所在:因为不是所有的人总是希望它这样执行。这是c++世

  • 将编译为以下内容而不使用装箱: 因此,编译器确实特别对待,但不是在泛型类上下文中。

  • 问题内容: 假设我们在页面上有一个DIV ,并且想要将该DIV的内容复制(“复制粘贴”)到另一个DIV中。我们可以这样做: 或使用jQuery: 但是,看来此方法不是一个好主意,应避免使用。 (1)为什么要避免这种方法? (2)应该怎么做呢? 更新: 为了解决这个问题,我们假设DIV中没有ID为ID的元素。 (对不起,我忘了在原始问题中介绍此案。) 结论: 我已经在下面发布了我对这个问题的答案(如