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

डेटाबेस समस्या, बदलते डेटा संरचना को कैसे स्टोर करें

मैं कहूंगा कि यह एक 1:n संबंध के लिए कहता है, जहां एक मास्टर "कसरत" तालिका है, और एक एकीकृत "घटक" तालिका है जिसमें कसरत की सभी गतिविधियां शामिल हैं।

आपके पास आपकी मुख्य तालिका होगी workouts :

id   int
participant varchar(255)
date        datetime
...... any other workout related data

फिर चाइल्ड टेबल workout_components :

workout_id  int          // Which workout this belongs to
tabindex    int          // Which sorting order this component has in the list
repeat      int          // Number of repetitions (e.g. 3 sets)
quantity    int          // e.g. 45 push-ups or 150 meters of cycling
quentity_unit varchar    // e.g. minutes or laps
activity    varchar      // push-ups, cycling .....

एक उदाहरण मान इस तरह दिखेगा:

कसरत तालिका:

id          participant      date
1           Harry Miller     2010-08-21

कसरत_घटकों की तालिका:

workout_id  tabindex     repeat      quantity     quantity_unit  activity
1           1            3           45           pcs            pushups
1           2            1           2            minutes        rope-jumping

लाभ:

  • विशिष्ट गतिविधियों तक सीमित नहीं है

  • क्वेरी करने में आसान - इस तरह की डेटा संरचना से कुछ कैसे प्राप्त करें से संबंधित प्रत्येक प्रश्न का उत्तर SO

    पर पहले ही दिया जा चुका है।
  • प्रत्येक कसरत में गतिविधियों को स्वतंत्र रूप से जोड़ा जा सकता है



  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_num_rows शून्य के बराबर काम नहीं कर रहा है

  2. उत्पादन डेटाबेस कॉन्फ़िगर नहीं किया गया है

  3. एक ही कॉलम में विदेशी कुंजियों का संदर्भ देना

  4. मैसकल फाइंड_इन_सेट स्लैश (/) सेपरेटर

  5. लॉग-स्लो-क्वेरी के लिए MySQL लॉन्ग क्वेरी टाइम वैल्यू बदलें या सेट करें