एसक्यूएल में हमेशा एक शानदार सुविधा है: कैस्केडिंग डिलीट। आप इसे पहले से योजना बनाते हैं और जब कुछ हटाने का समय होता है, तो बीएएम! उन सभी निर्भर अभिलेखों के बारे में चिंता करने की आवश्यकता नहीं है।कैस्केडिंग सॉफ्ट
हालांकि, आजकल यह वास्तव में कुछ भी हटाने के लिए लगभग वर्जित है। आप इसे हटाए गए के रूप में चिह्नित करते हैं और इसे दिखाना बंद कर देते हैं। दुर्भाग्यवश, मैं निर्भर रिकॉर्ड होने पर ऐसा करने के लिए ठोस समाधान नहीं ढूंढ पाया है। मैंने हमेशा नरम हटाए गए जटिल वेब को मैन्युअल रूप से कोड किया है।
क्या वहां कोई बेहतर समाधान है कि मैंने पूरी तरह याद किया है?
यह बेहद सुरुचिपूर्ण आईएमओ है। ऐसा करने में एकमात्र समस्या यह है कि आप एक NULL Delete_Date का उपयोग नहीं कर सकते हैं, बल्कि इसके बजाय '99 99-12-31' जैसी कुछ मनमाने ढंग से तारीख का उपयोग करना होगा। – HaxElit
थोड़ा और सोचने के बाद यह काम नहीं करता है क्योंकि यदि आप एक निर्भर रिकॉर्ड को नरम हटाते हैं तो आपको एक महत्वपूर्ण बाधा त्रुटि मिलती है क्योंकि माता-पिता की डिलीट तिथि अलग होती है। सच होने के लिए अच्छा लगता है मुझे लगता है;) – HaxElit