2
我使用PDO直接使用INSERT INTO tbl1 (key, val) VALUES (UUID(), :value)
在MySQL產生UUID
。我沒有任何想法如何刪除這些- 在MySQL側(虛線),在PHP端,我可以使用str_replace()
簡單地將其刪除。刪除破折號產生直接在MySQL
我使用PDO直接使用INSERT INTO tbl1 (key, val) VALUES (UUID(), :value)
在MySQL產生UUID
。我沒有任何想法如何刪除這些- 在MySQL側(虛線),在PHP端,我可以使用str_replace()
簡單地將其刪除。刪除破折號產生直接在MySQL
得到十進制值放置到某個整數字段中使用
UNHEX(REPLACE(UUID(),'-',''))
REPLACE(UUID(),'-','')
你不需要UNHEX,只是簡單地替換連字符。
爲什麼我需要'UNHEX'呢?我的列類型只是'VARCHAR' – fishcracker
如果是的話 - 不需要 – triclosan
如果你使用UUID作爲PRIMARY KEY,那麼你需要將它存儲爲'BINARY(16)'而不是'VARCHAR( 32)'。當涉及到數十個數千個小數據集時,它將真正提高您的性能。要做到這一點,你需要去掉破折號並取消它,就像在這個例子中一樣。您可以從percona博客[這裏](https://www.percona.com/blog/2014/12/19/store-uuid-optimized-way/)瞭解更多關於UUID的主鍵。 – adambullmer