Как импортировать таблицу в базу с уже существующую БД

FM
На сайте с 31.10.2011
Offline
113
557

Как импортировать таблицу в базу с уже существующей таблицей при условии, что некоторые строки уже есть??

LovelAss
На сайте с 05.06.2009
Offline
96
#1

insert into on duplicate key update

FM
На сайте с 31.10.2011
Offline
113
#2
LovelAss:
insert into on duplicate key update

а можно полный текст запроса?

siv1987
На сайте с 02.04.2009
Offline
427
#3

https://www.google.ru/search?client=opera&rls=ru&q=insert+into+on+duplicate+key+update&sourceid=opera&ie=utf-8&oe=utf-8&channel=suggest

duplicate key update подразумевает что имеющиеся значения относятся к полям с уникальным индексом. Если поля не уникальны импортируйте так, потом удаляйте повторяющие строки.

K
На сайте с 03.06.2015
Offline
45
#4

Индустриальное решение это репликация https://dev.mysql.com/doc/refman/5.0/en/replication.html но осилить его может не каждый.

MYSQL PHP JS HTML CSS SEO TXT США СССР
Ragnarok
На сайте с 25.06.2010
Offline
239
#5

insert ignore?

//TODO: перестать откладывать на потом
K
На сайте с 03.06.2015
Offline
45
#6

Нет господа, игноре и дупликате ки убдате - это не репликация. Например у нас типовая таблица

id - name - value где как обычно id - уникальный ключ. Под одним и тем же уникальным id в каждой таблице могут храниться разные кортежи. Например

В таблице 1 - 24 Ворона 120

В таблице 2 - 24 Виноград 50

Следовательно записи Виноград 50 - вообще не окажется в таблице 1 после импорта таблицы 2 по ignore, или не станет записи Ворона 120 если по duplicate key update values(). Зато там окажутся одинаковые записи типа 23 Сыр 12 и 25 Сыр 12 потому что ID у них разный.

---------- Добавлено 16.07.2015 в 21:36 ----------

На практике без обустройста репликации, то есть по случаю ремонта или там обновления или модификации надо сравнить 2 таблицы по важным критериям и профтыкать флаги в одной или другой. Флаги - ну поле завести еще одно на время, типа int, - позволяет выбрать из т1 то, чего нет в т2 и спокойно и гарантировано перекинуть через insert select

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий