gpt4 book ai didi

MySQL 并实现一些接近序列的东西?

转载 作者:搜寻专家 更新时间:2023-10-30 22:15:21 24 4
gpt4 key购买 nike

我最近正在从 oracle 迁移到 mysql,如果我在 mysql 中实现类似于序列的东西是一个好方法,我想得到一些建议。

基本上我目前要如何实现它是通过在 mysql 中为 oracle 中的每个序列创建一个单独的表,并有一个列代表 last_number 并在我插入新行时递增此列,这是另一种方式我可以着手做的方法是创建一个表,其中包含代表每个序列的几行,并在每次插入时分别递增每一行。

另一种更简单的方法是在插入数据时在相关列上选择 max()+1。

我基本上是在考虑切换到 select max()+1 选项,因为它看起来更容易实现,但我想就您认为从这些选项中实现它的最佳方式获得一些建议,如果有任何我目前在使用 select max()+1 时不知道的陷阱。

另外,我不使用 auto_increment 和函数 last_insert_id() 的原因是我想遵循 ansi 标准。

谢谢。

最佳答案

首先:max()+1如果您在高隔离级别中使用事务,则不能保证版本会为您提供序列。

我们通常使用序列的方式(如果我们不能避免的话)是创建一个带有 AUTO_INCREMENT 的表。值,INSERT INTO它,SELECT last_insert_id() , DELETE FROM table WHERE field<$LASTINSERTID .这当然是在存储过程中完成的。

关于MySQL 并实现一些接近序列的东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13969168/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com