Rumah > Soal Jawab > teks badan
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 membalut increment
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.
P粉7935324692023-09-07 11:34:14
Saya rasa jika terdapat ID pesanan pendua, anda boleh cuba menangkap ralat dan mencuba semula operasi, menjana ID pesanan baharu.