2010-11-05 70 views
1

我創建其中一個字段需要自動遞增,從1場將是序列號的數據庫。我應該用我使用BIGINT(20)無符號的「串行」數據類型,即?我可以使用SERIAL數據類型嗎?

+1

您正在使用什麼數據庫? – Oded 2010-11-05 09:44:06

+0

的phpmyadmin ............. – Johnson 2010-11-05 10:07:56

+1

phpMyAdmin是一個應用程序,它是不是** **一個DBMS。但是由於它用於管理MySQL數據庫,我們假設您使用的是MySQL(儘管數據類型「serial」是PostgreSQL特有的數據類型) – 2011-02-16 21:47:22

回答

1

嗯,這取決於,但可能不是大多數企業都希望他們已經使用的序列號的一些會計。這通常意味着他們想要一個沒有間隙的可審計序列,數據庫管理系統生成的自動序列不保證沒有間隙

處理這個問題的規範方法是創建一個序列號表(或者,根據應用程序,只是一個更復雜的序列號的順序部分)的表。該應用程序「需要」下一個可用的序列號從該表,並更新該表與一些相關的,可審計的數據。喜歡的東西的用戶名和時間戳是常見的,但它確實取決於應用程序

你必須小心與吃每秒數千次序列號的生產線。如此多的活動可能會導致爭議序列號表問題。

相關問題