[SQL ] 如何產生不重覆的准考證號碼?
小弟用PHP及MySQL寫一個考試線上報名系統,考生於報名頁面填寫完後,系統會即時
產生准考證號碼.由於不同科別的考生要領到不同代碼開頭的准考證號碼,例如,
考國文的考生領到像Ch001,Ch002的准考證號而考英文的領到Eng001,Eng002的准考證號.
所以在MySQL欄位規劃,准考證號碼的欄位無法單純只用auto_increment來產生不重覆
的准考證號碼.我的做法是,先找出資料表中該科目前最後一個准考證號碼是幾號?
然後把該號碼加1再insert或update.
現在問題來了,要如何避免數千名不同科別的考生同時上線報名,因為陰錯陽差關係,
同科別的考生同時按下確定鍵而得到相同的的准考證號碼?雖然說機率很小,但果真
發生,那就問題大條了...還請各路高手指導,謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 182.235.57.200
→
04/28 12:27, , 1F
04/28 12:27, 1F
→
04/28 12:28, , 2F
04/28 12:28, 2F
推
04/28 12:28, , 3F
04/28 12:28, 3F
推
04/28 13:42, , 4F
04/28 13:42, 4F
推
04/28 17:47, , 5F
04/28 17:47, 5F
→
04/28 17:47, , 6F
04/28 17:47, 6F
→
04/28 18:36, , 7F
04/28 18:36, 7F
推
04/28 21:16, , 8F
04/28 21:16, 8F
→
04/29 07:47, , 9F
04/29 07:47, 9F
→
04/29 07:49, , 10F
04/29 07:49, 10F
推
04/29 13:00, , 11F
04/29 13:00, 11F
→
04/29 13:01, , 12F
04/29 13:01, 12F
→
04/29 16:55, , 13F
04/29 16:55, 13F
討論串 (同標題文章)