Drupal 7 में डेटाबेस के साथ काम — पाठ 10 — रिकॉर्ड हटाने की क्वेरीज़ (DELETE)
रिकॉर्ड हटाने (DELETE) के लिए क्वेरीज़ को Drupal में क्वेरी बिल्डर (Query Builder) के माध्यम से ही बनाया जाना चाहिए। इन्हें db_delete() फ़ंक्शन से शुरू किया जाता है:
<?php $query = db_delete('node', $options); ?>
यह क्वेरी “node” टेबल से रिकॉर्ड्स को हटाएगी। ध्यान दें कि टेबल के नाम को आकृति कोष्ठकों {}
में लिखने की आवश्यकता नहीं है — क्वेरी बिल्डर यह स्वचालित रूप से कर देता है।
DELETE क्वेरीज़ Drupal के Fluent API का उपयोग करती हैं — अर्थात् सभी मेथड्स (सिवाय execute() के) उसी क्वेरी ऑब्जेक्ट को लौटाते हैं, ताकि मेथड्स को एक साथ जोड़ा जा सके। (यह तरीका UPDATE और INSERT क्वेरीज़ के समान है।)
DELETE क्वेरीज़ बहुत सरल होती हैं और केवल WHERE शर्तों का उपयोग करती हैं। WHERE क्लॉज़ का विवरण हम अगले पाठ में देखेंगे, अभी एक साधारण उदाहरण देखें:
<?php $num_deleted = db_delete('node') ->condition('nid', 5) ->execute(); ?>
यह क्वेरी “node” टेबल से उन सभी रिकॉर्ड्स को हटा देगी जिनका nid = 5 है।
यह क्वेरी SQL में इस प्रकार दिखेगी:
DELETE FROM {node} WHERE nid=5;
execute() मेथड क्वेरी के निष्पादन के बाद हटाए गए रिकॉर्ड्स की संख्या लौटाता है।