Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Sửa lỗi MySQL #1064: Cú pháp sai gần 'TYPE=MyISAM'

Lỗi ERROR 1064 (42000): You have an error in your SQL syntax... near 'Type=MyISAM' xảy ra do từ khóa TYPE đã bị loại bỏ kể từ MySQL 5.5 và không còn hỗ trợ trong MySQL 8.0. Thay vào đó, hãy sử dụng ENGINE.

Ví dụ lỗi

mysql> CREATE TABLE DemoTable1836 (
    ClientId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ClientName VARCHAR(20)
) TYPE=MyISAM AUTO_INCREMENT=1;
-- ERROR 1064: Cú pháp sai gần 'Type=MyISAM'

Cách sửa đúng

mysql> CREATE TABLE DemoTable1836 (
    ClientId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ClientName VARCHAR(20)
) ENGINE=MyISAM AUTO_INCREMENT=1;
-- Query OK

Sau đó chèn dữ liệu và kiểm tra:

mysql> INSERT INTO DemoTable1836(ClientName) VALUES('Chris'),('David'),('Mike'),('Sam');
mysql> SELECT * FROM DemoTable1836;

Kết quả:

+----------+------------+
| ClientId | ClientName |
+----------+------------+
|        1 | Chris      |
|        2 | David      |
|        3 | Mike       |
|        4 | Sam        |
+----------+------------+

Mẹo: Luôn dùng ENGINE=InnoDB (mặc định MySQL 8) cho tính toàn vẹn dữ liệu, chỉ dùng MyISAM khi có nhu cầu đặc thù.