@ninkar
Учу SQL.

Как добавить новую запись в существующую таблицу?

Есть таблица
goods_categories (id_categories, 
categories_name, 
categories_description, 
creation_date, 
id_employee_created, 
deleted,
deleted_date, 
id_employee_deleted, 
display_recommendations, 
num, 
display_condition_recommendations)

Надо вставить копию строки из этой таблицы со значениями
(11, `Программирование`.'<p>программирование</p>', 2018-11-20 12:27:39, 15, 0, '0000-00-00 00:00:00', 0, 1, 8, 0)
заменив в поле categories_name `Программирование` на `Веб-программирование`. Поле id_categories Auto.
Мой код:
INSERT INTO goods_categories (categories_name, categories_description, creation_date, id_employee_created,
deleted,deleted_date, id_employee_deleted, display_recommendations, num, display_condition_recommendations)
  VALUES ('Веб-Программирование', '<p>программирование</p>',  2018-11-20 12:27:39, 15, 0, 
'0000-00-00 00:00:00', 0, 1, 8, 0)
SELECT CONCAT ('Веб-Программирование', categories_description, creation_date, id_employee_created, deleted,
deleted_date, id_employee_deleted, display_recommendations, num, display_condition_recommendations)
  FROM goods_categories
    WHERE categories_name = 'Программирование'
В ответ получаю:
Error Code: 1064
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 '`goods_categories`
iNSERT INTO goods_categories(categories_name,categories_desc' at line 1
  • Вопрос задан
  • 69 просмотров
Пригласить эксперта
Ответы на вопрос 2
ipatiev
@ipatiev
Потомок старинного рода Ипатьевых-Колотитьевых
В целом направление верное, надо только соблюдать верный синтаксис. То есть выбирать сущевтвующие поля по отдельности, а не склеивать их зачем-то в одно через CONCAT

Плюс вы выполняете не тот запрос, который показываете, а какой-то, в котором iNSERT написано с маленькой буквы, и перед ним еще зачем-то болтается `goods_categories`
Ответ написан
Комментировать
tsklab
@tsklab
Здесь отвечаю на вопросы.
INSERT INTO goods_categories ( categories_name, categories_description, 
    creation_date, id_employee_created, deleted,deleted_date, id_employee_deleted, 
    display_recommendations, num, display_condition_recommendations )
  SELECT 'Веб-Программирование', categories_description, 
    creation_date, id_employee_created, deleted, deleted_date, id_employee_deleted, 
    display_recommendations, num, display_condition_recommendations
  FROM goods_categories
    WHERE categories_name = 'Программирование'
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы