MySQL中的此函數用於返回根據RFC 4122“通用唯一標識符(UUID)URN命名空間”生成的通用唯一標識符(UUID)。它被設計為通用唯一的數字。即使兩個UUID值是在兩個獨立的服務器上生成的,它們也應該是不同的。在MySQL中,UUID值是一個用utf8字符串表示的128位數字,十六進製數字的格式如下。
範例-
aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
在此,前三個數字是根據時間戳的低,中和高部分生成的。如您所見,在上述格式中,第四位數字代碼將保留時間唯一性,而第五位代碼將提供空間唯一性,這是一個IEEE 802節點號。
用法:
UUID()
參數:
此方法沒有任何參數。
返回:
它返回一個通用唯一標識符號。
Example-1:
借助UUID函數生成通用唯一標識符值。
SELECT UUID()
AS UUID_Value ;
輸出:
UUID_VALUE |
---|
fbe516f6-3e39-11eb-b897-0862660ccbd4 |
示例-2:
每當我們使用UUID函數時,我們都會獲得不同的通用唯一標識符值。讓我們檢查一下。
SELECT UUID() AS UUID_VALUE1, UUID() AS UUID_VALUE2, UUID() AS UUID_VALUE3 ;
輸出:
UUID_VALUE1 | UUID_VALUE2 | UUID_VALUE3 |
---|---|---|
e762634c-3e41-11eb-b897-0862660ccbd4 | e7626367-3e41-11eb-b897-0862660ccbd4 | e7626368-3e41-11eb-b897-0862660ccbd4 |
示例3:
在此示例中,我們將UUID用作表中的主鍵。為了演示,創建一個名為OrderDetails的表。
CREATE TABLE OrderDetails( OrderId BINARY(16) PRIMARY KEY, ProductName VARCHAR(100) NOT NULL, Price DECIMAL(10, 2) NOT NULL, ExpectedDelivery DATE NOT NULL );
現在,將數據插入OrderDetails表。在這裏,我們將使用UUID和UUID_TO_BIN()函數在OrderId列中分配值。
INSERT INTO OrderDetails(OrderId, ProductName, Price, ExpectedDelivery) VALUES(UUID_TO_BIN(UUID()), 'Asus Rog', 90000.00, '2020-12-20'), (UUID_TO_BIN(UUID()), 'Acer Predator', 100000.00, '2020-12-18'), (UUID_TO_BIN(UUID()), 'Lenovo Legion', 85000.00, '2020-12-19'), (UUID_TO_BIN(UUID()), 'Hp Omen', 70000.00, '2020-12-18'), (UUID_TO_BIN(UUID()), 'Dell Inspiron', 65000.00, '2020-12-23'), (UUID_TO_BIN(UUID()), 'Acer Nitro', 60000.00, '2020-12-22'), (UUID_TO_BIN(UUID()), 'Asus Tuf', 80000.00, '2020-12-19');
接下來,我們將使用以下命令檢查表。
SELECT * from OrderDetails;
輸出:
ORDERID | PRODUCTNAME | PRICE | EXPECTEDDELIVERY |
---|---|---|---|
0xE50EF0D93E3E11EBB8970862660CCBD4 | 華碩羅格 | 90000.00 | 2020-12-20 |
0xE514F3293E3E11EBB8970862660CCBD4 | 宏cer捕食者 | 100000.00 | 2020-12-18 |
0xE514F6793E3E11EBB8970862660CCBD4 | 聯想軍團 | 85000.00 | 2020-12-19 |
0xE514F7C83E3E11EBB8970862660CCBD4 | HP預兆 | 70000.00 | 2020-12-18 |
0xE514F9173E3E11EBB8970862660CCBD4 | 戴爾Inspiron | 65000.00 | 2020-12-23 |
0xE514FA7B3E3E11EBB8970862660CCBD4 | 宏cer | 60000.00 | 2020-12-22 |
0xE514FC6C3E3E11EBB8970862660CCBD4 | 華碩Tuf | 80000.00 | 2020-12-19 |
相關用法
- MySQL LEAD() and LAG()用法及代碼示例
- MySQL BIN()用法及代碼示例
- MySQL LAST_DAY()用法及代碼示例
- MySQL WEEKOFYEAR()用法及代碼示例
- MySQL MOD()用法及代碼示例
- MySQL Group_CONCAT()用法及代碼示例
- MySQL DEFAULT()用法及代碼示例
- MySQL AES_ENCRYPT()用法及代碼示例
- MySQL AES_DECRYPT()用法及代碼示例
- MySQL MD5用法及代碼示例
- MySQL COMPRESS( )用法及代碼示例
- MySQL PASSWORD用法及代碼示例
- MySQL DES_DECRYPT()用法及代碼示例
- MySQL DES_ENCRYPT()用法及代碼示例
- MySQL DECODE( )用法及代碼示例
- MySQL ENCODE( )用法及代碼示例
- MySQL ISNULL( )用法及代碼示例
- MySQL NULLIF( )用法及代碼示例
- MySQL VERSION()用法及代碼示例
- MySQL USER( )用法及代碼示例
- MySQL CONVERT( )用法及代碼示例
- MySQL CONV( )用法及代碼示例
注:本文由純淨天空篩選整理自jana_sayantan大神的英文原創作品 UUID() function in MySQL。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。