हटाएं
- DELETE एक DML कमांड है।
- एक पंक्ति लॉक का उपयोग करके DELETE कथन निष्पादित किया जाता है, तालिका में प्रत्येक पंक्ति को हटाने के लिए लॉक किया जाता है।
- जहां क्लॉज में हम फिल्टर निर्दिष्ट कर सकते हैं
- यदि स्थिति मौजूद है तो यह निर्दिष्ट डेटा हटा देता है।
- डिलीट एक ट्रिगर सक्रिय करता है क्योंकि ऑपरेशन व्यक्तिगत रूप से लॉग किया जाता है।
- छंटनी से धीमी क्योंकि, यह लॉग रखता है।
- रोलबैक संभव है।
छंटनी
- TRUNCATE एक DDL कमांड है।
- TRUNCATE TABLE हमेशा टेबल और पेज को लॉक करता है लेकिन हर रो को नहीं।
- कहां स्थिति का उपयोग नहीं कर सकते।
- यह सभी डेटा को हटा देता है।
- TRUNCATE TABLE ट्रिगर को सक्रिय नहीं कर सकता क्योंकि ऑपरेशन व्यक्तिगत पंक्ति विलोपन को लॉग नहीं करता है।
- प्रदर्शन के लिहाज से तेज़, क्योंकि यह कोई लॉग नहीं रखता है।
- रोलबैक संभव है।
- DELETE और TRUNCATE दोनों को ट्रांजेक्शन के साथ उपयोग करने पर वापस रोल किया जा सकता है (TRUNCATE को SQL सर्वर में वापस रोल किया जा सकता है, लेकिन MySQL में नहीं)।
- अगर ऑटो इंक्रीमेंट वाला पीके है, तो ट्रंकेट काउंटर को रीसेट कर देगा
http://beginner-sql-tutorial.com/sql-delete-statement .htm