Re: [問題] 關於資料庫流水號的問題

看板java作者 (彥一)時間9年前 (2016/01/07 15:35), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串4/5 (看更多)
※ 引述《u9423504 (緣投農夫)》之銘言: : 各位前輩好: : 小弟使用的資料庫是Oracle。想請教各位,如何產生以當天日期為主的流水號,而且 : 日期每過一天,流水號的編號就從01開始編起。例如:15121301、15121302 : 、15121303、15121401、15121402等。其中,『15』表示是西元2015年。 : 其流水號格式為:yymmdd+2碼的流水號。而且要避免線上多人同時Insert資料時產生 : 重覆的編號。且該流水號的資料欄位格式是Varchar。 : 小弟目前想到的方法是:以當天的日期加上like 和 count 去做 select,若都沒有找 : 則日期補上01;若有找到,則日期前加上 : count回傳的筆數+1。 : 不知是否有更好的方法呢?! 這題把日期跟流水號分兩欄存就很好做了 建一個before insert trigger自動去找當天日期的流水號欄位max值 +1 設為new value 再加個date+seq的unique條件即可~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.35.37.170 ※ 文章網址: https://www.ptt.cc/bbs/java/M.1452180906.A.D7D.html

01/08 05:38, , 1F
這個流水號只有insert用嗎?需要回傳後續程式使用嗎?
01/08 05:38, 1F
文章代碼(AID): #1MZeMgrz (java)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文
完整討論串 (本文為第 4 之 5 篇):
文章代碼(AID): #1MZeMgrz (java)