SQL में TRUNCATE एक DDL (Data Definition Language) कमांड है जिसका उपयोग किसी टेबल के सभी रिकॉर्ड्स को तेजी से हटाने के लिए किया जाता है, लेकिन टेबल की संरचना (structure) को बनाए रखा जाता है।
TRUNCATE TABLE table_name;
मान लीजिए हमारे पास एक टेबल है जिसका नाम employees
है:
-- सभी डेटा को हटाएं लेकिन टेबल बनी रहेगी
TRUNCATE TABLE employees;
DELETE | TRUNCATE |
---|---|
डेटा को एक-एक करके हटाता है | डेटा को ब्लॉक लेवल पर हटाता है (तेजी से) |
WHERE क्लॉज का उपयोग किया जा सकता है | WHERE क्लॉज का उपयोग नहीं किया जा सकता |
ROLLBACK किया जा सकता है (यदि TRANSACTION में हो) | ROLLBACK संभव नहीं होता |
Trigger चल सकते हैं | Trigger आमतौर पर नहीं चलते |
TRUNCATE करते समय यह सुनिश्चित करें कि आप उस टेबल पर काम कर रहे हैं जिसका डेटा अब उपयोग में नहीं है, क्योंकि इसे UNDO करना संभव नहीं होता।
TRUNCATE एक शक्तिशाली SQL कमांड है जिसका उपयोग बड़े टेबल्स से डेटा हटाने के लिए किया जाता है। यह DELETE की तुलना में तेज होता है और कम संसाधनों का उपयोग करता है। हालांकि, इसकी स्थायीत्व (permanency) को ध्यान में रखते हुए इसे सावधानी से उपयोग करें।