簡體   English   中英

如何使用php和mysql用table2中的內容更新table1

[英]How to update table1 with content from table2 with php and mysql

我的數據庫中有兩個表,table1和table2。 它們是相同的。 但是有時我更改表1中的數據。

如何復制table1中的數據並更新table2以使其看起來相同?

我嘗試了REPLACE INTO table2 SELECT * FROM table1但是它的工作方式類似於INSERT,只是創建新行而不是更新現有行。

為了使REPLACE INTO能夠按預期工作,目標表必須定義一個主鍵,否則MySQL無法確定行是否已存在,並始終假定有新行。 結果,對於沒有主鍵的表, REPLACE INTO行為與INSERT INTO完全相同。

或者,您可以使用兩個查詢,一個為UPDATE ,另一個為INSERT ,並帶有適當的WHERE (NOT) EXISTS子句。 這樣做的好處是它是可移植的( REPLACE INTO是MySQL擴展)。

另一種選擇是運行兩個命令...

truncate table table2;
insert into table2 select * from table1;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM