@easyscripter

Не удается создать таблицу MYSQL?

При попытке создать базу данных через кмд mysql возникает ошибка
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 'group varchar(20) not null,
nameSurname tinytext,
Otchestvo tinytext,
adress tin' at line 3

Версия MYSQL 8.0

Сам запрос на создание БД:

create table students (
    -> id int not null auto_increment primary key,
    -> group varchar(20) not null,
    -> nameSurname tinytext,
    -> Otchestvo tinytext,
    -> adress tinytext,
    -> homePhone tinytext,
    -> contactPhone varchar(12) not null,
    -> yearOfEntry date,
    -> avgGradePoint float,
    -> );
  • Вопрос задан
  • 60 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Экранируйте все имена таблиц и полей. Тогда не нарвётесь на то, что в очередной версии MySQL имя вашей таблицы станет зарезервированным словом.
CREATE TABLE `students` (
  `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `group` VARCHAR(20) NOT NULL,
  `name` TINYTEXT,
  `surname` TINYTEXT,
  `patronymic` TINYTEXT,
  `address` TINYTEXT,
  `homePhone` TINYTEXT,
  `contactPhone` VARCHAR(12) NOT NULL,
  `yearOfEntry` DATE,
  `avgGradePoint` FLOAT,
);
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
mosesfender
@mosesfender
Меланхолик, параноик, падал с коек
group - зарезервированное слово. Назови поле иначе.

Да, и PRIMARY_KEY - это отдельная директива, её не пишут в поле.
create table students (
    -> id int not null auto_increment,
…
    -> primary key(id)
);
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы