2013-08-30 17 views
0

使用Hibernate,Struts2,Spring框架,當數百萬用戶同時提交他們的信息或訂單時,哪種方式更好地爲數據庫生成主鍵?當大量數據同時進入時如何在數據庫中生成密鑰?

有一些選項:

1:與 「序列」

3生成:用的 「uuid」

2生成您的解決方案......

(考慮數據便攜性和效率)

+0

有什麼選擇? –

+0

您的意見是? –

+0

您是否確定實際上存在合理的性能差異? –

回答

0

我會使用數據庫來管理唯一的鍵,例如

INSERT INTO yourTable (yourSequence.nextval(), COLUMN1, COLUMN2, ...) 

生成應用自己的密鑰肯定會工作,但如果將應用程序擴展到多個服務器,它可能會導致問題,如果你不爲做準備。

如果你正在使用MySQL,你可以使用AUTO_INCREMENT - http://www.tutorialspoint.com/mysql/mysql-using-sequences.htm

+0

感謝您的回答。但它對數據庫的可移植性差,您知道MySQL沒有序列。 – jackxu

+0

確實如此,但是您可以在MySQL中使用AUTO_INCREMENT來複制功能 – acutesoftware

+0

是的,我明白了,謝謝。 – jackxu

相關問題