Почему этот скрипт не работает, потому что ему не нравится имя столбца? [Дубликат]

0

Ему не нравится слово release как имя столбца.

 CREATE TABLE external_db (

      external_db_id          INT not null,
      db_name                     VARCHAR(100) NOT NULL,
      release                    VARCHAR(40)  NOT NULL,
      status                      ENUM ('KNOWNXREF','KNOWN','XREF','PRED','ORTH', 'PSEUDO') not null,

      PRIMARY KEY( external_db_id ) 

    );

Изображение 174551

Я изменил имя поля на releaseX, и ошибка исчезла.

Этот скрипт был получен из https://github.com/Ensembl/ensembl/blob/release/91/sql/table.sql, который должен быть mySQL. Это проблема с версией в MySQL или я могу украсить слово release в скрипте, чтобы его можно было использовать в качестве имени столбца?

Я использую MySQL 5.7 и MySQLWorkbench 6.3.

Я знаю, что выпуск - это плохое имя для столбца, но я не написал сценарий.

  • 1
    Потому что "release" - это ключевое слово и часть команд sql. dev.mysql.com/doc/refman/5.6/en/...
  • 0
    Поле называется "db_release" в файле, который вы указали на Github. Просто говорю.
Показать ещё 2 комментария
Теги:
mysql-workbench

1 ответ

1

Release - зарезервированное ключевое слово

Чтобы использовать его как имя столбца, вы можете избежать его с обратными тактами:

'release'

Ещё вопросы

Сообщество Overcoder
Наверх
Меню