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

एक mysql तालिका में php से श्रेणी का नाम स्टोर करने का सबसे अच्छा तरीका

यह निर्भर करता है,

आपके पास कितनी श्रेणियां होंगी, आपको उन्हें कितनी बार अपडेट करने की आवश्यकता होगी?

मैंने एनम को जोड़ने से पहले दृष्टिकोण लिया है, लेकिन एक कक्षा में एक स्थिर विधि भी लिखी है और वहां मान्य नाम संग्रहीत किए हैं

class Item{


    public static function get_categories()
    {

        // only works in php >=5.4 otherwise use return array('Category1'...);
        return [
          'Category1' => 'Category1',
          'Category2' => 'Category2',
          'Category3' => 'Category3'
        ];
    }

}

उपरोक्त करने से आप आसानी से Item::get_categories() द्वारा सरणी तक पहुंच प्राप्त कर सकते हैं, जो डेटाबेस में ENUM फ़ील्ड में मानों के अनुरूप होना चाहिए। यदि आपको और श्रेणियां जोड़ने की आवश्यकता है, तो उन्हें डेटाबेस में और फिर इस फ़ंक्शन में जोड़ें। आप इसका उपयोग उपयोगकर्ताओं की पसंद को मान्य करने और जावास्क्रिप्ट विकल्प उत्पन्न करने के लिए कर सकते हैं।

हालांकि!!!!

आप एक सीडिंग का उल्लेख करते हैं जो आपकी तालिका को पॉप्युलेट करता है, यह आपके लिए आपके ENUM को आसानी से अपडेट नहीं कर पाएगा।

मैं एक ENUM का उपयोग करूंगा, क्योंकि

1) । सेटअप करना आसान है 2)। दो तालिकाओं में शामिल होने से यह थोड़ा आसान है (लेकिन जब आप उन्हें सीखते हैं तो जॉइन इक्का होते हैं) 3)। यदि आपने एक द्वितीयक तालिका का उपयोग किया है (जैसा कि आपने बताया है) आपको पहले उस तालिका से मान देखना होगा, और फिर सम्मिलित करना होगा, या यदि ड्रॉपडाउन में श्रेणी का उपयोग किया गया था, तो ड्रॉपडाउन को पॉप्युलेट करने के लिए श्रेणी आईडी और उसके नाम का उपयोग करें (मैं इसे इस तरह से करूँगा)

अंतिम विचार

जब तक आपकी साइट बहुत व्यस्त न हो, दोनों तरीकों (लुकअप टेबल, और ENUM) के प्रदर्शन में आपको अंतर दिखाई देगा। आपको अभी भी प्रत्येक संस्करण के साथ श्रेणियों की तालिका को दोनों तरीकों से अपडेट करना होगा, लेकिन एक वैकल्पिक तालिका के बजाय एक INSERT कथन का उपयोग करना थोड़ा आसान होगा

आपने जो भी तरीका चुना है, अगर आपको यह पसंद नहीं है, तो अपने कोड को अपडेट करना काफी आसान होगा।

आशा है कि यह मदद करता है, और शुभकामनाएँ

याद रखें इसे सरल रखें बेवकूफ K.I.S.S




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. यूनियन क्वेरी पर गिनती कैसे करें

  2. php में स्ट्रिंग को MySQL टाइमस्टैम्प प्रारूप में कनवर्ट करना

  3. Mysql FROM_UNIXTIME UTC . के रूप में

  4. तीन तालिकाओं में शामिल हों

  5. XAMPP PHP/MySQL के साथ वास्तव में धीरे-धीरे चल रहा है