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

MySQL-এ রিজার্ভড কীওয়ার্ড (groups) দিয়ে টেবিল তৈরি করার সমস্যা ও সমাধান

MySQL-এ কিছু শব্দ রিজার্ভড কীওয়ার্ড হিসেবে সংরক্ষিত থাকে। এগুলো টেবিল বা কলাম নাম হিসেবে সরাসরি ব্যবহার করলে সিনট্যাক্স এরর হয়।

সমস্যা

groups একটি রিজার্ভড কীওয়ার্ড।

mysql> CREATE TABLE groups (id INT, name VARCHAR(40));
ERROR 1064 (42000): You have an error in your SQL syntax... near 'groups (id int, name varchar(40))'

সমাধান: ব্যাকটিক (``) ব্যবহার

রিজার্ভড কীওয়ার্ডকে ব্যাকটিক দিয়ে ঘেরলে ব্যবহার করা যায়।

mysql> CREATE TABLE `groups` (id INT, name VARCHAR(40));
Query OK, 0 rows affected

ইনসার্ট ও সিলেক্টেও ব্যাকটিক লাগবে:

INSERT INTO `groups` VALUES (10, 'John'), (11, 'Bob'), (12, 'Mike');
SELECT * FROM `groups`;

আউটপুট

+------+------+
| id   | name |
+------+------+
| 10   | John |
| 11   | Bob  |
| 12   | Mike |
+------+------+

ব্যাখ্যা: ব্যাকটিক (`) MySQL-এ আইডেন্টিফায়ার (টেবিল নাম, কলাম নাম) কোট করার স্ট্যান্ডার্ড উপায়। ডাবল কোট (")ও কাজ করতে পারে যদি ANSI_QUOTES SQL মোড অন থাকে। রিজার্ভড কীওয়ার্ডের তালিকা পেতে: SHOW KEYWORDS বা MySQL ডকুমেন্টেশন দেখুন। সাধারণ রিজার্ভড কীওয়ার্ড: SELECT, INSERT, UPDATE, DELETE, GROUP, ORDER, TABLE, INDEX, KEY, PRIMARY, UNIQUE, FOREIGN, REFERENCES ইত্যাদি।

  1. MySQL-এ 'index' নামের কলাম তৈরি করার সময় সিনট্যাক্স এরর ফিক্স করা

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

  3. MySQL에서 예약어 'group'을 테이블명으로 쓰려면 백틱으로 감싸기

  4. MySQL-এ Hibernate ব্যবহার করে টেবিল তৈরি