MySQL का UUID
फ़ंक्शन UUIDv1 GUID देता है। मैं एसक्यूएल में यादृच्छिक GUIDs (यानी UUIDv4) उत्पन्न करने का एक आसान तरीका ढूंढ रहा हूं।MySQL में UUIDv4 कैसे उत्पन्न करें?
6
A
उत्तर
10
मैं काफी कुछ समय बिताया है एक समाधान के लिए देख रहा है और निम्नलिखित mysql समारोह है कि एक यादृच्छिक UUID (अर्थात UUIDv4) उत्पन्न करता है मानक MySQL कार्यों का उपयोग कर के साथ आया था। मैं यह साझा करने के लिए अपने स्वयं के प्रश्न का उत्तर दे रहा हूं कि उम्मीद है कि यह उपयोगी होगा।
-- Change delimiter so that the function body doesn't end the function declaration
DELIMITER //
CREATE FUNCTION uuid_v4()
RETURNS CHAR(36)
BEGIN
-- Generate 8 2-byte strings that we will combine into a UUIDv4
SET @h1 = LPAD(HEX(FLOOR(RAND() * 0xffff)), 4, '0');
SET @h2 = LPAD(HEX(FLOOR(RAND() * 0xffff)), 4, '0');
SET @h3 = LPAD(HEX(FLOOR(RAND() * 0xffff)), 4, '0');
SET @h6 = LPAD(HEX(FLOOR(RAND() * 0xffff)), 4, '0');
SET @h7 = LPAD(HEX(FLOOR(RAND() * 0xffff)), 4, '0');
SET @h8 = LPAD(HEX(FLOOR(RAND() * 0xffff)), 4, '0');
-- 4th section will start with a 4 indicating the version
SET @h4 = CONCAT('4', LPAD(HEX(FLOOR(RAND() * 0x0fff)), 3, '0'));
-- 5th section first half-byte can only be 8, 9 A or B
SET @h5 = CONCAT(HEX(FLOOR(RAND() * 4 + 8)),
LPAD(HEX(FLOOR(RAND() * 0x0fff)), 3, '0'));
-- Build the complete UUID
RETURN LOWER(CONCAT(
@h1, @h2, '-', @h3, '-', @h4, '-', @h5, '-', @h6, @h7, @h8
));
END
//
-- Switch back the delimiter
DELIMITER ;
नोट: छद्म यादृच्छिक संख्या का इस्तेमाल किया पीढ़ी (MySQL के RAND
) क्रिप्टोग्राफी द्वारा सुरक्षित नहीं है और इस तरह कुछ पूर्वाग्रह जो टक्कर खतरा बढ़ सकता है।
संबंधित मुद्दे
- 1. mysql से उत्पन्न त्रुटि
- 2. PHP और mySQL (i): यादृच्छिक उपयोगकर्ता आईडी कैसे उत्पन्न करें?
- 3. "यादृच्छिक" कैसे उत्पन्न करें लेकिन "अद्वितीय" संख्याएं कैसे उत्पन्न करें?
- 4. पीडीएफ कैसे उत्पन्न करें?
- 5. सेल जेएस में मौजूद डेटाबेस से मॉडल कैसे उत्पन्न करें?
- 6. रुबी में यादृच्छिक तिथि कैसे उत्पन्न करें?
- 7. एसबीटी प्लगइन में स्रोत कैसे उत्पन्न करें?
- 8. जावा में एसएएलटी मूल्य कैसे उत्पन्न करें?
- 9. क्वेरी में सीरियल नंबर कैसे उत्पन्न करें?
- 10. स्कैला में एन-ग्राम कैसे उत्पन्न करें?
- 11. जावा में ध्वनि प्रभाव कैसे उत्पन्न करें?
- 12. matplotlib में यादृच्छिक रंग कैसे उत्पन्न करें?
- 13. आर में यादृच्छिक संख्या कैसे उत्पन्न करें?
- 14. वीबीस्क्रिप्ट में GUID कैसे उत्पन्न करें?
- 15. एक्लिप्स में जावाडोक एचटीएमएल कैसे उत्पन्न करें?
- 16. भारी मात्रा में डेटा कैसे उत्पन्न करें?
- 17. आईफोन में क्यूआर कोड कैसे उत्पन्न करें?
- 18. एक .po फ़ाइल कैसे उत्पन्न करें?
- 19. अद्वितीय आईडी उत्पन्न करें
- 20. MySQL में स्वचालित रूप से जेपीए के साथ केस संवेदनशील कॉलम कैसे उत्पन्न करें
- 21. WSDL फ़ाइल कैसे उत्पन्न करें?
- 22. एपीआई दस्तावेज कैसे उत्पन्न करें
- 23. यादृच्छिक ग्राफ कैसे उत्पन्न करें?
- 24. गिटार नोट कैसे उत्पन्न करें
- 25. जावास्क्रिप्ट स्टैकट्रैक कैसे उत्पन्न करें?
- 26. एंड्रॉइड: आवृत्ति कैसे उत्पन्न करें?
- 27. geoJson डेटा कैसे उत्पन्न करें?
- 28. अद्वितीय अल्फान्यूमेरिक कैसे उत्पन्न करें?
- 29. क्लोजर: 'ट्राई' कैसे उत्पन्न करें?
- 30. 'kwargs` सूची कैसे उत्पन्न करें?