Обновление данных одной таблицы из другой

ВЕРТИ
Дата: 09.02.2013 15:07:39
Здравствуйте!

Подскажите пожалуйста, правильно ли я хочу сделать следующее.
Есть база данных MSQl сайта. В этой базе данных я постоянно обновляю таблицу. Сначало выгружаю её с сервера на компьютер. Изменяю что нужно. Перед заливкой на сайт я сначала очищаю таблицу, которая находится на сервере и только затем делаю импорт. Если же не очищать таблицу, то будет ошибка импорта (номер не помню).
Сегодня решил попробовать другой вариант: загрузить на сервер в базу данных таблицу с обновлёнными данными но с другим именем (чтобы не заменить имеющуюся в базе). Затем с помощью sql запроса обновить данных из загруженной таблицы в нужной таблице.
Теперь по коду.
mnn_tabl - таблица со старыми данными;
mnn_tabl_new - таблица с новыми данными;
Структура таблиц идентична.

UPDATE mnn_tabl as s, mnn_tabl_new as n
SET s.description=n.description
WHERE s.id = n.id AND s.id_parent=n.id_parent
romy4
Дата: 09.02.2013 15:28:28
ВЕРТИ,

id это что? первичный ключ, автоинкремент?
ВЕРТИ
Дата: 09.02.2013 15:51:04
Здравствуйте, romy4!

В структуре phpMyAdmin id в поле "Тип" стоит int(11), а в поле "Дополнительно" стоит AUTO_INCREMENT
romy4
Дата: 09.02.2013 15:59:42
ВЕРТИ,

Если только новые данные/обновлённые, то наверняка выгребете кучу ошибков с неправильным обновлением.
ВЕРТИ
Дата: 09.02.2013 16:02:55
А почему? Как-то же обновляются данные на сайтах, без очистки таблицы (что приводит к временной неработоспособности сайта).
romy4
Дата: 09.02.2013 16:10:24
ВЕРТИ,

у вас таблица на сервере может дополняться используя алгоритмы сайта? В общем мало данных чтобы вам советовать.
ВЕРТИ
Дата: 09.02.2013 16:22:19
romy4,

Эта таблица дополняется только мной и никем больше.
Если есть два уникальных поля: id и id_parent, то почему возможны ошибки?
romy4
Дата: 09.02.2013 16:29:29
ВЕРТИ,

если локально абсолютная копия той, что на серваке, тогда всё ок.
ВЕРТИ
Дата: 09.02.2013 16:37:23
romy4,

Итого получается, что код
UPDATE mnn_tabl as s, mnn_tabl_new as n
SET s.description=n.description
WHERE s.id = n.id AND s.id_parent=n.id_parent

обновит данные в столбце description из новой таблицы в старой.
Обязательным условием является наличие одинаковой структуры двух рассматриваемых таблиц.

Если всё верно, то завершающий подвопрос: как все данные обновить, а не только в столбце description?
romy4
Дата: 09.02.2013 18:15:10
ВЕРТИ,

посмотреть в мануал и написать поля через запятую