Ошибка 502 при вставке в базу данных SQL, без первичного ключа - PullRequest
0 голосов
/ 03 декабря 2018

Я работаю над информационной панелью для моей команды, которая позволяет получать информацию о наших проектах.При создании нового проекта на панели инструментов, пользователь должен заполнить форму с именем, датой начала и датой закрытия проекта.Однако у меня есть проблема при вставке проекта, имя которого уже существует в базе данных, и я не могу найти решение, так как у каждого проекта есть свой собственный индекс (с автоматически увеличивающимся столбцом целых чисел в БД) и проектИмя столбца не является первичным ключом таблицы.Он отлично работает при использовании другого имени, например, если «БД проекта» находится в БД, вставка «проекта лета» завершится неудачно (что приведет к ошибке 502), а «проекта лета 2» - нет.Как я могу вставить новые проекты с похожими именами?

Я использую NodeJS с express, ajax и request, и моя база данных использует mySQL, управляемый с помощью PHPMyAdmin.

EDIT (03/12/2018): Столбец «Имя» является табличным индексом.Какие могут быть последствия для таблицы, если я отредактирую столбец, чтобы он больше не действовал как индекс?

Table structure

Ответы [ 2 ]

0 голосов
/ 03 декабря 2018

Зарезервированные слова MySQL. В MySQL есть зарезервированные слова, которые нельзя использовать в качестве идентификаторов ( имена таблиц или столбцов и т. Д. .) Без заключения в кавычки обратных кавычек (`).Цитирование идентификаторов было введено в MySQL версии 3.23.6 .Вы также можете заключить идентификаторы в двойные кавычки (") , если MySQL запущен в режиме ANSI .

Вы можете использовать его следующим образом:

Insert into `tablename` (`name`) VALUES ("xyz");
0 голосов
/ 03 декабря 2018

Можете ли вы опубликовать фрагмент вашей схемы?Не глядя на ваш код, может быть трудно увидеть, какие у вас отображения

Редактировать: я думаю, что «ключ» и «индекс» в MySQL означают одно и то же.Вы можете иметь только 1 первичный ключ, и похоже, что у вас есть один выше.Попробуйте удалить индекс из таблицы имен

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...