Lỗi ERROR 1064 (42000) thường do cú pháp sai, đặc biệt khi tên database chứa ký tự đặc biệt (dấu gạch ngang -, khoảng trắng, từ khóa зарезервировано).
Nguyên nhân phổ biến
Tạo database với dấu gạch ngang không dùng backtick:
mysql> CREATE DATABASE customer-tracker;
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 '-tracker' at line 1
Giải pháp
Bọc tên database trong cặp backtick `:
mysql> CREATE DATABASE `customer-tracker`;
Query OK, 1 row affected (0.21 sec)
Hoặc tránh dùng ký tự đặc biệt trong tên (chỉ dùng chữ, số, dấu gạch dưới _).
Mẹo
- Luôn dùng backtick cho tên định danh (database, bảng, cột) chứa ký tự đặc biệt hoặc trùng từ khóa.
- Kiểm tra phiên bản MySQL:
SELECT VERSION();để tham khảo tài liệu đúng.