私は最近、オラクルから mysql に移行する過程にあり、mysql でシーケンスに似たものを実装する方法が良い方法である場合、アドバイスが必要です。
基本的に、現在それを実装する方法は、Oracleの各シーケンスに対してmysqlに個別のテーブルを作成し、last_numberを表す単一の列を持ち、新しい行を挿入するたびにこの列をインクリメントすることです。これは、私ができる別の方法ですそれを行うには、各シーケンスを表す複数の行を持つ単一のテーブルを作成し、挿入を行うたびに各行を個別にインクリメントします。
それを行う別の簡単な方法は、データを挿入するときに、関連する列で select max()+1 を実行することです。
私は基本的に select max()+1 オプションに切り替えることを考えています. select max()+1 を使用するときに、現在認識していない落とし穴があります。
また、auto_increment と関数 last_insert_id() を使用していない理由は、ANSI 標準に従いたいからです。
ありがとう。