[英]how to leave a column in a MYSQL phpmyadmin database empty if no data entered
[英]How to empty mysql database in phpmyadmin
我想通過刪除所有表來清空 phpmyadmin 中的 mysql 數據庫,但這會產生外鍵錯誤。
一種解決方案是以正確的順序刪除表以防止外鍵錯誤,但是有沒有辦法在 phpmyadmin 中自動執行此操作? 例如清空數據庫的功能?
我的回答有點晚了,但很容易和工作:
您現在有一個空數據庫(該數據庫仍然存在,並且數據庫視圖顯示“在數據庫中未找到表”。
您在這里所說的數據庫清理是什么意思-
在第一種情況下,更好的選擇是刪除數據庫並重新創建它。
或者,如果由於任何特定原因您不想刪除數據庫(因為這樣您將丟失所有觸發器/視圖等),則首先通過 show tables 命令獲取要刪除的表並准備“刪除表 table_name;” 在 excel 中編寫腳本或通過以下命令並通過 phpmyadmin 執行。
SELECT CONCAT("drop table ",table_schema,".",table_name,";") FROM information_schema.TABLES WHERE table_type='BASE TABLE' AND table_schema='my_db';
在第二種情況下,如果您只想清除數據,則可以通過以下命令准備截斷腳本,然后通過 phpmyadmin- 執行它
SELECT CONCAT("truncate table ",table_schema,".",table_name,";") FROM information_schema.TABLES WHERE table_type='BASE TABLE' AND table_schema='my_db';
注意:執行set foreign_key_checks=0;
在執行 drop 或 truncate 命令並set foreign_key_checks=1;
執行后避免外鍵相關問題。
您可以在服務器控制台上執行以下命令。
mysql -uroot -p<pass> -Nse 'show tables' database1 | while read table; do mysql -uroot -p<pass> database1 -e "drop table $table"; done
或者
mysql -uroot -p<pass> -Nse 'show tables' database1 | while read table; do mysql -uroot -p<pass> database1 -e "truncate table $table"; done
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.