Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL के UUID संस्करण 1 फ़ंक्शन के लिए स्थानापन्न करें?

आपकी चिंता, कि "अधिकांश यूयूआईडी बेकार है और जगह बर्बाद कर रहा है" डेटा प्रकार के आकार के लिए अंतर्निहित है। आप अपने डेटाबेस में कभी भी उतनी प्रविष्टियां नहीं कर पाएंगे, जितनी सैद्धांतिक सीमा 16 बाइट्स की अनुमति देती है।

वास्तव में, V1 UUID V4 की तुलना में अधिक उपयुक्त है यदि आप UUID का उपयोग केवल एक टेबल आईडी के रूप में करते हैं - क्योंकि यह संघर्ष को रोकने के लिए मैक-एड्रेस और टाइम स्टैम्प का उपयोग करता है। V4 में ऐसा कोई तंत्र नहीं है, हालांकि व्यावहारिक रूप से आपको संघर्षों के बारे में बहुत अधिक चिंता करने की आवश्यकता नहीं है :) यदि आपको अपने UUID को अप्रत्याशित होने की आवश्यकता है तो आपको V1 के बजाय V4 UUID का उपयोग करना चाहिए।

साथ ही, ध्यान दें कि उदाहरण के लिए 4x4 बाइट यादृच्छिक मानों की रचना 16 बाइट यादृच्छिक मान बनाने के समान नहीं हो सकती है। हमेशा क्रिप्टो और यादृच्छिकता के साथ:मैं आपके स्वयं के यूयूआईडी ::वी 4 रूटीन को लागू करने की सलाह नहीं दूंगा।

यदि आपकी मशीन पर स्थापित है, तो आप php-uuid . का उपयोग कर सकते हैं पैकेज।

एक उदाहरण कोड (जिसका उपयोग आपके आवेदन में किया जा सकता है) यहां पाया जा सकता है:http://rommelsantor.com/clog/2012/02/23/generate-uuid-in-php/

इसे इस तरह इस्तेमाल करें:

$uuid = uuid_create(1);

जो उपयोगकर्ता अपने वेबसर्वर पर पैकेज स्थापित करने में सक्षम हैं, वे आवश्यक पैकेज स्थापित कर सकते हैं, जैसे:(उबंटू के लिए यहां)

apt-get install php5-dev uuid-dev
pecl install uuid


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या mysql 5.6 के लिए कोई_VALUE क्षमता है?

  2. MySQL - वन टू वन रिलेशनशिप?

  3. सम्मिलित करें ... से चुनें ... डुप्लीकेट कुंजी अद्यतन पर

  4. MySQL के लिए Percona सर्वर की निगरानी - प्रमुख मेट्रिक्स

  5. PHP एसक्यूएल एसटीएमटी एकाधिक पसंद का चयन करें? क्या यह संभव है?