小编Len*_*ffe的帖子

在 mysql 上模拟序列,为迁移到 oracle 做准备

我一直在开发一个针对 MySQL 的应用程序,而一个新的开发服务器正在慢慢建立。新的开发服务器将使用 oracle,并且由于我们即将准备就绪,我想从主键中删除 auto_increment 属性,并模拟 Oracle 的序列。我好几年没用oracle了。

由于每个预插入触发器都会做同样的事情——从 *foo_sequence* 中获取表foo的下一个 id ,Oracle 是否允许实现某种形式的动态/词法触发?

任何提示、技巧或陷阱?

编辑 #1:1550 - 这不是一个频繁使用的应用程序。一次使用将导致在最大的事务中插入 13 次小的、简单的记录。并发性是未知的,但一个用户导致任何重要的锁饥饿的可能引擎盖是估计非常低的 IMO。

编辑 #2 1612:目的是在 mysql 中模拟 oracle 序列,然后在 oracle 上使用 oracle 序列。

谢谢。

解析度:

  • 我正在实现一个类作为序列的接口。
    • 在 mysql 上,我正在实现一个表来保存序列值,以及一个存储过程来获取下一个值并更新行。该类将调用此存储过程并返回值。
    • 在 oracle 上,我只会从 oracle 序列中获取下一个值。班级会提出这个要求。Sequence 类将从序列中请求下一个值。
  • 应用程序代码将使用 Sequence 类来获取插入的下一个序列值,从使用该值的插入语句中抽象出“nextval”实现细节。

mysql trigger oracle

2
推荐指数
1
解决办法
952
查看次数

标签 统计

mysql ×1

oracle ×1

trigger ×1