簡體   English   中英

更新數據庫中的所有表

[英]Update all the tables in a database

當用戶更改用戶名時,我需要更新所有表以將其舊名稱替換為新名稱。

我努力了:

mysqli_query($con,"UPDATE * SET UserName='".$username2."'
                 WHERE UserName='".$username."'"); 

但這似乎只更改了一個表(我不知道為什么選擇了這個特定表;它不是字母排序順序中的第一個或最后一個)。 我嘗試了不止一次,並且同一張桌子一直在變化。

首先,為什么要將“用戶名”存儲在多個位置? 這是一個糟糕的設計。

如果仍然需要這樣做,則使用主鍵-外鍵關系。 以及更新級聯選項。 看到這里: http : //dev.mysql.com/doc/refman/5.6/en/innodb-foreign-key-constraints.html

另一種選擇是使用觸發器。 這樣,當您更新有問題的表時,觸發器將觸發,並且觸發器可以執行您分配的任何任務。 看到這里: http : //dev.mysql.com/doc/refman/5.0/en/create-trigger.html

暫無
暫無

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

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