डिलीट क्वेरीज़ (Delete Queries)
डिलीट क्वेरीज़ हमेशा क्वेरी बिल्डर ऑब्जेक्ट का उपयोग करके लिखी जानी चाहिए। इन्हें delete() मेथड का उपयोग करके इस प्रकार चलाया जाता है:
$query = $connection->delete('mytable', $options);
यह एक डिलीट क्वेरी ऑब्जेक्ट बनाता है, जो तालिका mytable से रिकॉर्ड्स को हटाता है। ध्यान दें कि टेबल के नाम के लिए आकृति ब्रेसेस (curly braces) की आवश्यकता नहीं होती, क्योंकि क्वेरी बिल्डर इसे स्वचालित रूप से संभाल लेता है।
डिलीट क्वेरी ऑब्जेक्ट फ्लुएंट API का उपयोग करता है। अर्थात्, सभी मेथड्स (सिवाय execute() के) उसी क्वेरी ऑब्जेक्ट को वापस लौटाते हैं, जिससे मेथड कॉल्स को चेन करना संभव होता है। कई मामलों में इसका मतलब यह होता है कि क्वेरी ऑब्जेक्ट को किसी वेरिएबल में सेव करने की आवश्यकता नहीं होती।
डिलीट क्वेरीज़ अवधारणात्मक रूप से बहुत सरल होती हैं और केवल WHERE क्लॉज़ से बनी होती हैं। WHERE क्लॉज़ की पूरी संरचना का विवरण «शर्तीय क्लॉज़» खंड में दिया गया है और यहाँ केवल संक्षेप में बताया गया है।
एक पूर्ण डिलीट क्वेरी इस प्रकार होगी:
$num_deleted = $connection->delete('mytable')
->condition('myfield', 5)
->execute();
ऊपर दिया गया क्वेरी {mytable} टेबल से उन सभी पंक्तियों को हटा देगा, जहाँ कॉलम myfield का मान 5 है। यह निम्नलिखित क्वेरी के बराबर है:
DELETE FROM {mytable} WHERE myfield=5;
execute() मेथड उस संख्या को लौटाता है, जितनी पंक्तियाँ क्वेरी के परिणामस्वरूप हटाई गईं।