本文介紹了將Java中生成的UUID存儲到Oracle DB的有效方法是什么?刪除或不刪除UUID中的連字符有什么用處嗎?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
將Java中生成的UUID存儲到Oracle DB的有效方法是什么?刪除或不刪除UUID中的連字符是否有任何用途-存儲/性能?
將存儲
07b319dc-7e64-4047-a3e3-63ab43864d81
原樣
或存儲
07b319dc-7e64-4047-a3e3-63ab43864d81
作為07b319dc7e644047a3e363ab43864d81
有什么不同嗎?
推薦答案
刪除連字符將為您在數據庫中每行節省正好4個字符,這并不值得您這么做。Oracle不會因為這四個字符而顯著降低速度或加快速度。更糟糕的是,如果您希望將值選擇回Java應用程序并重新創建java.util.UUID
對象,則需要在正確的位置重新插入連字符。
如果您想在數據庫上節省一點內存,RAW(16)
(如您問題的注釋中提到的vcsjones)將具有最小的內存占用。但是,如果您希望使用RAW
類型,則需要將UUID反匯編為byte[]
數組。這有點棘手,因為java.util.UUID
只返回一個String
表示或兩個long
值。從byte[]
數組重新創建UUID
對象更加困難。
這篇關于將Java中生成的UUID存儲到Oracle DB的有效方法是什么?刪除或不刪除UUID中的連字符有什么用處嗎?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,