मारियाडीबी में, UUID_SHORT() एक अंतर्निहित फ़ंक्शन है जो एक छोटा यूनिवर्सल यूनिक आइडेंटिफ़ायर (UUID) देता है।
यह एक 64-बिट अहस्ताक्षरित पूर्णांक देता है (जैसा कि UUID() द्वारा लौटाए गए स्ट्रिंग-फॉर्म 128-बिट पहचानकर्ता के विपरीत है समारोह)।
सिंटैक्स
वाक्य रचना इस प्रकार है:
UUID_SHORT() इसलिए, किसी तर्क की आवश्यकता नहीं है (या स्वीकृत)।
उदाहरण
प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है:
SELECT UUID_SHORT(); परिणाम:
+-------------------+ | UUID_SHORT() | +-------------------+ | 99291717236162560 | +-------------------+
अगर मैं इसे दूसरी बार कॉल करता हूं, तो मुझे एक अलग मान मिलता है:
SELECT UUID_SHORT(); परिणाम:
+-------------------+ | UUID_SHORT() | +-------------------+ | 99291717236162561 | +-------------------+
परिणाम के बारे में
UUID_SHORT() द्वारा लौटाया गया मान यदि निम्न शर्तें सत्य हैं, तो अद्वितीय होने की गारंटी है:
server_idवर्तमान होस्ट का आपके मास्टर और स्लेव सर्वरों के सेट के बीच अद्वितीय हैserver_id0. के बीच है और255- आप अपने सर्वर के लिए अपना सिस्टम समय
mysqld. के बीच सेट नहीं करते हैं पुनरारंभ होता है - आप
UUID_SHORT()का आह्वान नहीं करते हैंmysqld. के बीच औसतन प्रति सेकंड 16 मिलियन से अधिक बार पुनरारंभ होता है
ध्यान दें कि UUID_SHORT() . का उपयोग करने वाले कथन कथन-आधारित प्रतिकृति के लिए फ़ंक्शन सुरक्षित नहीं हैं।
की तुलना में UUID() समारोह
UUID_SHORT() by द्वारा लौटाया गया परिणाम UUID() द्वारा लौटाए गए के समान है फ़ंक्शन, सिवाय इसके कि परिणाम UUID() . द्वारा लौटाया गया है aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee में पांच हेक्साडेसिमल संख्याओं की utf8 स्ट्रिंग द्वारा दर्शाई गई 128-बिट संख्या है प्रारूप।
यहां दोनों की तुलना की गई है:
SELECT
UUID(),
UUID_SHORT(); परिणाम:
+--------------------------------------+-------------------+ | UUID() | UUID_SHORT() | +--------------------------------------+-------------------+ | e67d0fc6-cd8d-11eb-be04-88e9fe739f3d | 99291717236162562 | +--------------------------------------+-------------------+
इसके अलावा, मारियाडीबी 10.6.1 से, एक SYS_GUID() Oracle संगतता बढ़ाने के लिए फ़ंक्शन जोड़ा गया है।
कोई तर्क नहीं
जैसा कि बताया गया है, UUID_SHORT() किसी तर्क को स्वीकार नहीं करता। जब मैं तर्क पास करता हूँ तो क्या होता है:
SELECT UUID_SHORT(3); परिणाम:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'UUID_SHORT'