Сгенерированный PHP оператор MySQL Create Table возвращает ошибку

mysql> CREATE TABLE metadata
(
id int,
created_by int,
modified_by int,
deleted_by int,
created_at datetime,
modified_at datetime,
deleted_at datetime,
key varchar(45),
definition_type varchar(1),
metadata_type varchar(1),
no_of_decimals int,
is_required tinyint,
min_range decimal,
max_range decimal,
entity varchar(10),
sequence int,
meta_group varchar(2),
PRIMARY KEY (id) );

ОШИБКА 1064 (42000): у вас ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы найти правильный синтаксис для использования рядом с ‘varchar (45), Definition_type varchar (1), metadata_type varchar (1), no_of_decimal’ в строке 1

Я не совсем уверен, как исправить эту ошибку, поскольку такие вещи обычно не имеют конкретных ответов в Интернете. Как я могу исправить эту ошибку?

0

Решение

key это зарезервированное слово, вы должны избегать его с помощью галочек ` в MySQL:

`key` varchar(45)
1

Другие решения

Других решений пока нет …