[讨论] 关于流水号的问题

楼主: u9423504 (缘投农夫)   2016-01-06 00:39:16
各位前辈好:
小弟使用的数据库是Oracle。想请教各位,如何产生以当天日期为主的流水号,而且
日期每过一天,流水号的编号就从01开始编起。例如:15121301、15121302
、15121303、15121401、15121402等。其中,‘15’表示是西元2015年。
其流水号格式为:yymmdd+2码的流水号。而且要避免线上多人同时Insert资料时产生
重复的编号。
请教各位若以纯SQL有办法做到上述的需求吗?! 还是要使用PL/SQL呢?若是的话
又要如何写!还是有更简单的方法可以达到这样的需求?!
作者: fashionjack (神奇傑克)   2016-01-06 08:38:00
这好像需用程式来写,而且此格式会有百年虫问题.2015121303 比较安全.
作者: moyasi (Simple Life)   2016-01-06 09:50:00
简单的话就日期+sequence
作者: bij831 (睡猫)   2016-01-07 19:22:00
12c前的话就照楼上较简单,12c的话有提供流水号码功能了

Links booklink

Contact Us: admin [ a t ] ucptt.com