Saya kini menggunakan Sequelizeincrement()
函数来递增订单号值的列。例如:.increment("order_no", { by: 1 });
Sesekali permintaan akan tiba di API saya secara serentak dalam saat yang sama, menghasilkan nilai nombor pesanan pendua.
Adakah terdapat cara untuk memastikan bahawa nilai tambahan nombor pesanan adalah unik? Adakah saya perlu membalutincrement
dalam transaksi? Selepas membuat nombor pesanan, adakah saya perlu menyemak secara rawak dan kerap jika terdapat pendua? Tidak pasti cara yang betul untuk menyelesaikan masalah ini.
Menurut dokumentasi Sequelize (https://sequelize.org/docs/v6/core-concepts/model-instances/#incrementing-and-decrementing-integer-values)
Untuk mengelakkan isu konkurensi, Sequelize menyediakan kaedah increment dan decrement increment untuk menambah/mengurangkan nilai instance.
Namun, walaupun nampaknya kaedah ini berkesan, anda masih mendapat nilai pendua apabila menggunakannya.
Saya rasa jika terdapat ID pesanan pendua, anda boleh cuba menangkap ralat dan mencuba semula operasi, menjana ID pesanan baharu.