কম্পিউটার

MySQL TRUNCATE এবং DROP কমান্ডের মধ্যে উল্লেখযোগ্য পার্থক্য কি?


MySQL TRUNCATE এবং DROP কমান্ডের মধ্যে সবচেয়ে উল্লেখযোগ্য পার্থক্য হল TRUNCATE কমান্ড টেবিলের কাঠামোকে ধ্বংস করবে না কিন্তু বিপরীতে DROP কমান্ড টেবিলের কাঠামোকেও ধ্বংস করবে।

উদাহরণ

mysql> Create table testing(id int PRIMARY KEY NOT NULL AUTO_INCREMENT,Name Varchar(20));
Query OK, 0 rows affected (0.24 sec)

mysql> Insert into testing(Name) Values('Ram'),('Mohan'),('John');
Query OK, 3 rows affected (0.12 sec)
Records: 3 Duplicates: 0 Warnings: 0

mysql> Select * from testing;
+----+-------+
| id | Name  |
+----+-------+
| 1  | Ram   |
| 2  | Mohan |
| 3  | John  |
+----+-------+
3 rows in set (0.00 sec)

এখন নিম্নরূপ 'পরীক্ষা' টেবিলটি ছেঁটে ফেলার পরে, এখনও এর গঠন ডাটাবেসে রয়ে গেছে এবং এটি প্রাথমিক কীকেও আরম্ভ করে।

mysql> Truncate table testing;
Query OK, 0 rows affected (0.04 sec)

mysql> DESCRIBE testing;
+-------+-------------+------+-----+---------+----------------+
| Field | Type        | Null | Key | Default | Extra          |
+-------+-------------+------+-----+---------+----------------+
| id    | int(11)     | NO   | PRI | NULL    | auto_increment |
| Name  | varchar(20) | YES  |     | NULL    |                |
+-------+-------------+------+-----+---------+----------------+
2 rows in set (0.21 sec)

কিন্তু যখন আমরা একটি টেবিলে DROP কমান্ড প্রয়োগ করি তখন কাঠামোটি ডাটাবেস থেকেও মুছে যায়।

mysql> Drop table testing;
Query OK, 0 rows affected (0.08 sec)

mysql> DESCRIBE testing;
ERROR 1146 (42S02): Table 'query.testing' doesn't exist

  1. মাইএসকিউএল-এ int এবং পূর্ণসংখ্যার মধ্যে পার্থক্য কী?

  2. MySQL এ 'AND' এবং '&&' এর মধ্যে পার্থক্য?

  3. মাইএসকিউএল-এ TINYINT(1) এবং বুলিয়ানের মধ্যে পার্থক্য কী?

  4. MySQL এ!=NULL এবং IS NOT NULL এর মধ্যে পার্থক্য কি?