MYSQL: синтаксическая ошибка: «УДАЛИТЬ» недопустимый ввод в этом месте

0

Это мой первый попыток совершить транзакцию, и я хочу сделать транзакцию для удаления всех немецких кораблей из таблицы классов, а также добавить новый столбец США в таблицу одновременно.

START TRANSACTION
-- Delete Germany from classes table
DELETE FROM classes WHERE country = 'Germany';
-- Add new ship for USA into classes table
INSERT INTO 'classes' ('class','type','country','numGuns','bore','displacement') 
VALUES ('SS Farkas','bb','USA','10','20','36000');
-- Commit the transaction
commit;

Я получаю эту синтаксическую ошибку при попытке выполнить в начале моего оператора DELETE FROM:

Синтаксическая ошибка: "УДАЛИТЬ" (удалить) недействительный ввод в этом положении

  • 1
    Отсутствует точка с запятой. Голосование закрыто как опечатка.
  • 0
    Просто замечание: numGuns , bore , displacement , вероятно, / мы надеемся, числовые столбцы, тогда вы должны предоставить числовые данные, а не строки: VALUES ('SS Farkas','bb','USA',10,20,36000)
Теги:
database

2 ответа

1

вам не хватает ; :

START TRANSACTION;

-- Delete Germany from classes table
DELETE FROM classes WHERE country = 'Germany';
-- Add new ship for USA into classes table
INSERT INTO 'classes' ('class','type','country','numGuns','bore','displacement') 
VALUES ('SS Farkas','bb','USA','10','20','36000');
-- Commit the transaction
commit;
  • 0
    Обновлено по отсутствующей причине
  • 0
    Ах, простая ошибка, большое спасибо!
Показать ещё 1 комментарий
0

Удалить запрос действителен, но у вас есть ; отсутствует.

START TRANSACTION должно быть START TRANSACTION;

подробнее: https://dev.mysql.com/doc/refman/5.7/ru/commit.html

Ещё вопросы

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