মূল কনটেন্টে যান
Database Management SystemsSQL

DELETE, TRUNCATE ও DROP-এর পার্থক্য

পড়তে প্রায় ৬ মিনিটসংস্করণ ১সর্বশেষ আপডেট: ২১ অক্টোবর, ২০২৬১৬টি অনুশীলন প্রশ্ন

সংক্ষেপে মনে রাখুন

দ্রুত রিভিশনের জন্য মূল কথা

মূল কথা
  • তিনটি কমান্ডের প্রভাব আলাদা করতে পারা
সূত্র ও নিয়ম
DELETE: DML command, row-by-row, WHERE clause allowed, fires triggers, can be Rolled Back. TRUNCATE: DDL command, deallocates data pages, resets identity counter, no triggers, faster, can rollback in transaction block. DROP: DDL command, deletes entire table structure, constraints and data completely.

SQL ডেটা অপসারণের ত্রয়ী পার্থক্য টেবিল: ১. DELETE: - কমান্ডের ধরন: DML - শর্ত: WHERE ক্লজ দিয়ে নির্দিষ্ট সার…

যেখানে ভুল হয়

অনেক পুরোনো বইয়ে লেখা থাকে "TRUNCATE ক্যান নেভার বি রোলড ব্যাক"। আধুনিক RDBMS (PostgreSQL, SQL Server, Oracle)-এ ট্রানজ্যাকশনের মধ্যে `BEGIN TRANSACTION; TRUNCATE TABLE t; ROLLBACK;` দিলে ডেটা সম্পূর্ণ ফেরত আসে। তবে প্রধান তাত্ত্বিক পার্থক্য: TRUNCATE হলো DDL এবং DELETE হলো DML।

DELETE

DML কমান্ড। WHERE দিয়ে নির্দিষ্ট row মুছে। টেবিলের গঠন থাকে।

sql
DELETE FROM employees WHERE dept_id = 5;

TRUNCATE

সব row একসাথে মুছে, টেবিলের গঠন থাকে। সাধারণত DELETE-এর চেয়ে দ্রুত। এটি DDL হিসেবে গণ্য হয়; rollback সমর্থন DBMS ভেদে আলাদা।

DROP

টেবিলের data ও গঠন, দুটোই সম্পূর্ণ মুছে দেয়।

sql
DROP TABLE employees;

পরের ধাপ

এই টপিকে ৫টি প্রশ্ন অনুশীলন করুন

পড়া মনে আছে কি না, ছোট একটি সেটে দেখে নিন। প্রতিটি উত্তরের সাথে ব্যাখ্যা থাকবে, আর ভুল প্রশ্নগুলো রিভিশনের তালিকায় যাবে