কম্পিউটার টিউটোরিয়াল

MySQL-এ রিজার্ভড ওয়ার্ড 'table' হিসেবে টেবিল নাম ব্যবহার করা

MySQL-এ রিজার্ভড কীওয়ার্ড (যেমন table) টেবিল নাম হিসেবে ব্যবহার করলে সিনট্যাক্স এরর হয়। উদাহরণ:

mysql> create table table(
    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    FirstName varchar(100)
);

এটি নিচের এরর দেবে:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'table( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100) )' at line 1

সমাধান: টেবিল নামকে ব্যাকটিক (`) দিয়ে র‍্যাপ করুন।

ব্যাকটিক দিয়ে টেবিল তৈরি করি:

mysql> create table `table`(
    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    FirstName varchar(100)
);
Query OK, 0 rows affected (0.81 sec)

রেকর্ড ইনসার্ট করি (ব্যাকটিক ব্যবহার করে):

mysql> insert into `table`(FirstName) values('Chris');
Query OK, 1 row affected (0.15 sec)
mysql> insert into `table`(FirstName) values('Robert');
Query OK, 1 row affected (0.15 sec)
mysql> insert into `table`(FirstName) values('David');
Query OK, 1 row affected (0.15 sec)
mysql> insert into `table`(FirstName) values('Mike');
Query OK, 1 row affected (0.13 sec)

রেকর্ডগুলো দেখি:

mysql> select *from `table`;

আউটপুট:

+----+-----------+
| Id | FirstName |
+----+-----------+
| 1  | Chris     |
| 2  | Robert    |
| 3  | David     |
| 4  | Mike      |
+----+-----------+
4 rows in set (0.00 sec)

সর্বোত্তম অভ্যাস: রিজার্ভড কীওয়ার্ড এড়িয়ে চলুন। যদি বাধ্য হয়, তবে সবসময় ব্যাকটিক (`) ব্যবহার করুন।

  1. MySQL-এ রিজার্ভড কীওয়ার্ড 'Key' কলাম নাম হিসেবে ব্যবহার করা (ব্যাকটিক)

  2. MySQL-এ আন্ডারস্কোর (_) টেবিল নাম হিসেবে ব্যবহার করা (ব্যাকটিক)

  3. MySQL-এ রিজার্ভড ওয়ার্ড 'index' কলাম নাম হিসেবে ব্যবহার করা (ব্যাকটিক)

  4. MySQL-এ বর্তমান বছরের সাথে ডাইনামিক টেবিল নাম তৈরি করা (যেমন ২০১৯)