पाठ 1बाधाओं को लागू करना: NOT NULL, UNIQUE, CHECK, FOREIGN KEY cascades और ON DELETE/UPDATE रणनीतियांNOT NULL, UNIQUE, CHECK, और FOREIGN KEY बाधाओं को लागू करके व्यावसायिक नियमों को लागू करें। ON DELETE और ON UPDATE रणनीतियों को डिजाइन करें, जिसमें CASCADE और RESTRICT शामिल हैं, ताकि डेटा अखंडता की रक्षा हो और वास्तविक व्यावसायिक वर्कफ्लो का समर्थन हो।
आवश्यक डेटा लागू करने के लिए NOT NULL का उपयोगUNIQUE और कम्पोजिट कुंजियों का डिजाइनव्यावसायिक नियमों के लिए CHECK बाधाएंFOREIGN KEY विकल्प और ट्रेडऑफON DELETE और ON UPDATE कार्रवाइयों का चयनपाठ 2टेबल परिभाषाएं: users (एप्लिकेशन प्रमाणीकरण) — कॉलम, हैशिंग, सॉल्ट्स, खाता स्थिति, PKsएप्लिकेशन प्रमाणीकरण के लिए सुरक्षित users टेबल बनाएं। उपयोगकर्ता नामों, ईमेल, पासवर्ड हैश, सॉल्ट्स, और खाता स्थिति के लिए कॉलम परिभाषित करें। पासवर्ड नीतियों, लॉकआउट फ्लैग्स, और ऑडिट तथा स्वामित्व फील्ड्स के संबंधों को संबोधित करें।
उपयोगकर्ता पहचानकर्ता और लॉगिन फील्ड्सपासवर्ड हैश और सॉल्ट स्टोरेजखाता स्थिति और लॉकआउट फ्लैग्सभूमिका, अनुमति, और प्रोफाइल लिंक्सउपयोगकर्ता गतिविधि के लिए ऑडिट कॉलमपाठ 3टेबल परिभाषाएं: clients — कॉलम, प्रकार, बाधाएं, PK और महत्वपूर्ण FKsस्पष्ट प्राथमिक कुंजियों, अद्वितीय बाधाओं, और संबंधित इकाइयों से विदेशी कुंजियों के साथ clients टेबल परिभाषित करें। नामों, संपर्कों, और पतों के लिए उपयुक्त डेटा प्रकार चुनें, और खोज, विभाजन, तथा ऑडिटिंग आवश्यकताओं का समर्थन करने वाले कॉलम डिजाइन करें।
क्लाइंट पहचानकर्ता और प्राथमिक कुंजी चयननाम, संपर्क, और पता कॉलमईमेल और कोड पर अद्वितीय बाधाएंऑर्डर्स और इनवॉइसेज से विदेशी कुंजियांक्लाइंट्स के लिए ऑडिटिंग और मेटाडेटा कॉलमपाठ 4इकाई मॉडलिंग और सामान्यीकरण: आवश्यकताओं को टेबलों और संबंधों से मैप करनाक्लाइंट्स, ऑर्डर्स, ऑर्डर_आइटम्स, इनवॉइसेज, और यूजर्स को स्पष्ट संबंधों के साथ इकाइयों के रूप में मॉडल करें। अतिरिक्तता कम करने के लिए सामान्यीकरण नियम लागू करें, व्यावसायिक नियमों को टेबलों से मैप करें, और प्रदर्शन के लिए नियंत्रित असामान्यीकरण को उचित ठहराएं।
इकाइयों और संबंधों की पहचान1NF, 2NF, और 3NF नियमों का लागू करनावन-टू-मेनी और मेनी-टू-मेनी मॉडलिंगवैकल्पिक और अनिवार्य संबंधों का प्रबंधनसुरक्षित रूप से असामान्यीकृत करने का समय और तरीकापाठ 5इंडेक्स रणनीति: उम्मीदवार इंडेक्स (एकल-कॉलम और कम्पोजिट) और औचित्यक्लाइंट्स, ऑर्डर्स, ऑर्डर_आइटम्स, इनवॉइसेज, और यूजर्स के लिए इंडेक्स रणनीति की योजना बनाएं। क्वेरी पैटर्न के आधार पर एकल-कॉलम और कम्पोजिट इंडेक्स चुनें, और रीड प्रदर्शन को राइट ओवरहेड तथा स्टोरेज विचारों के साथ संतुलित करें।
उच्च-मूल्य क्वेरी पैटर्न की पहचानएकल-कॉलम बनाम कम्पोजिट इंडेक्समहत्वपूर्ण क्वेरीज के लिए कवरिंग इंडेक्सविदेशी कुंजियों और स्थिति फील्ड्स को इंडेक्सिंगइंडेक्स उपयोग की निगरानी और ट्यूनिंगपाठ 6टेबल परिभाषाएं: invoices — कॉलम, प्रकार, ऑर्डर्स और क्लाइंट्स से संबंधइनवॉइसेज टेबल और उसके ऑर्डर्स, क्लाइंट्स, तथा भुगतानों से संबंधों को डिजाइन करें। कुल, करों, और स्थितियों के लिए कॉलम परिभाषित करें, और संदर्भ अखंडता सुनिश्चित करें। आंशिक भुगतानों, क्रेडिट नोट्स, और अनुपालन के लिए नंबरिंग योजनाओं को संबोधित करें।
इनवॉइस पहचानकर्ता और नंबरिंग नियमइनवॉइस को क्लाइंट्स और ऑर्डर्स से जोड़नाकुल, कर, और मुद्रा कॉलमइनवॉइस स्थिति और लाइफसाइकल ट्रैकिंगक्रेडिट नोट्स और समायोजन संभालनापाठ 7डेटा प्रकार चयन: न्यूमेरिक, डेसिमल, UUID बनाम सीरियल, टाइमस्टैम्प और टाइमज़ोन हैंडलिंगपहचानकर्ताओं, राशियों, और टाइमस्टैम्प के लिए उपयुक्त डेटा प्रकार चुनें। धन के लिए न्यूमेरिक और डेसिमल की तुलना करें, कुंजियों के लिए UUID बनाम सीरियल, और टाइमज़ोन-जागरूक टाइमस्टैम्प पर चर्चा करें। परिशुद्धता, स्टोरेज, और पोर्टेबिलिटी विचारों को संबोधित करें।
मौद्रिक मूल्यों के लिए न्यूमेरिक बनाम डेसिमलUUID बनाम सीरियल प्राथमिक कुंजियांनामों के लिए कैरेक्टर और टेक्स्ट कॉलमटाइमज़ोन-जागरूक टाइमस्टैम्प सर्वोत्तम प्रथाएंडेट-ओनली और अंतराल फील्ड्स संभालनापाठ 8टेबल परिभाषाएं: orders और order_items — कॉलम, प्रकार, कम्पोजिट कुंजियां, FK अखंडताप्राथमिक और कम्पोजिट कुंजियों, विदेशी कुंजी अखंडता, और आवश्यक कॉलम सहित सामान्यीकृत orders और order_items टेबल परिभाषित करें। मात्राओं, मूल्य निर्धारण, स्थितियों को कैप्चर करना और क्लाइंट्स तथा इनवॉइसेज से सुसंगत संबंध सुनिश्चित करना सीखें।
ऑर्डर्स और ऑर्डर_आइटम्स के लिए कोर कॉलमप्राथमिक और कम्पोजिट कुंजियों का चयनक्लाइंट्स, यूजर्स, इनवॉइसेज को विदेशी कुंजियांमात्राओं, कीमतों, और छूटों का मॉडलिंगस्थिति फील्ड्स और लाइफसाइकल ट्रैकिंगपाठ 9एग्रीगेटेड इनवॉइस/ऑर्डर रिपोर्टिंग के लिए मटेरियलाइज्ड व्यूज और डेराइव्ड टेबल्सऑर्डर्स और इनवॉइसेज का सारांश देने वाले मटेरियलाइज्ड व्यूज और डेराइव्ड टेबल्स का अन्वेषण करें। राजस्व, करों, और ग्राहक गतिविधि के लिए एग्रीगेट डिजाइन करना, रिफ्रेश रणनीतियां, और रीयल टाइम बनाम बैच रिपोर्टिंग के बीच प्रदर्शन ट्रेडऑफ सीखें।
कुंजी रिपोर्टिंग एग्रीगेट्स की पहचानसारांश और रोलअप टेबलों का डिजाइनमटेरियलाइज्ड व्यू रिफ्रेश रणनीतियांदेर से आने वाले और सुधारे गए डेटा का प्रबंधनरिपोर्टिंग टेबलों को इंडेक्सिंग और पार्टिशनिंगपाठ 10मल्टीटेनेंसी और सॉफ्ट डिलीट्स के लिए डिजाइन (tenant_id, deleted_at दृष्टिकोण)एकाधिक किरायेदारों और सॉफ्ट डिलीट्स का समर्थन करने वाले स्कीमा डिजाइन करें। tenant_id रणनीतियों, रो-लेवल अलगाव, और स्कीमा-प्रति-किरायेदार ट्रेडऑफ की तुलना करें। deleted_at कॉलम, फिल्टरिंग पैटर्न, और बाधाओं को लागू करें जो ऐतिहासिक डेटा संरक्षित रखें।
tenant_id कॉलम बनाम प्रति किरायेदार स्कीमारो-लेवल सुरक्षा और किरायेदार अलगावdeleted_at सॉफ्ट डिलीट फील्ड्स लागू करनासॉफ्ट-डिलीटेड पंक्तियों को बाहर करने के क्वेरी पैटर्नसॉफ्ट-डिलीटेड रिकॉर्ड्स को पुनर्स्थापित और ऑडिट करना