2016-02-18 6 views
0

У меня есть ящик db в MySQL, у которого много таблиц. Я хочу, чтобы значение одной таблицы было автоматически сохранено на другой таблице.Как скопировать данные из одной таблицы в другую в MySQL?

Например, я пишу что-то на: table1.lastname, я хочу, чтобы это также хранилось в table2.lastname.

Как это называется и как я могу это сделать с помощью PHP My Admin?

+0

вы можете сделать это с помощью триггеров –

+0

Любые дополнительные сведения? – Leonidas

+0

Если вы сообщите нам о цели, некоторые могут предложить лучшее решение. –

ответ

0
CREATE TABLE new_table_name LIKE old_table_name 

Create trigger after_insert on new_table 
like this 

CREATE TRIGGER `AFTER_INSERT` AFTER INSERT ON `new_table_name` FOR EACH ROW BEGIN 

insert into new_table_name (column_names) values (column_values) ; 

END 
+0

Здравствуйте, Я хочу скопировать последнее имя из db1 в lastname в db2. Не могли бы вы рассказать мне, как это синтаксис? – Leonidas

+0

SET база данных2.table1.columnA TO база данных1.table1.columnA WHERE database2.id = database1.id – Priyanshu

+0

Спасибо! И где именно я запускаю это? Как простой запрос SQL? – Leonidas

-1

Это будет делать то, что вы хотите:

INSERT INTO table2 (lastname) 
SELECT lastname 
FROM table1 

Если вы хотите включить все строки из table1. В противном случае вы можете добавить инструкцию WHERE до конца, если хотите добавить только подмножество таблицы1.

Надеюсь, это поможет.


Если таблица не существует, то вы можете создать с той же схеме, как так:

CREATE TABLE table2 LIKE table1; 

Затем, чтобы скопировать данные по:

INSERT INTO table2 SELECT * FROM table1 

Или если столы имеют различные структуры, вы также можете:

INSERT INTO table2 (`col1`,`col2`) SELECT `col1`,`col2` FROM table1; 

EDIT: для ограничения этого ..

INSERT INTO table2 (`col1_`,`col2_`) SELECT `col1`,`col2` FROM 
table1 WHERE `foo`=1 
+0

Здравствуйте, До сих пор я просто создал таблицы в MySQL. Ничего другого, Как я могу это сделать? – Leonidas

+0

Он не ищет PHP-решение, он, вероятно, хочет SQL-решение, чтобы сделать его автоматическим. – Phiter

+0

http://stackoverflow.com/questions/8754607/i-want-to-copy-table-contained-from-one-database-and-insert-onto-another-databas –

0

Для начала необходимо создать таблицу для хранилища данных. Затем вы должны создать триггер по желаемой таблице для события catch и вставить данные в раннюю созданную таблицу.

Смежные вопросы