mysql基礎:刪除數據庫,刪除表,重命名表 ============刪除數據庫============= DROP DATABASE用於取消數據庫中的所用表格和取消數據庫。使用此語句時要非常小心!如果要使用DROP DATABASE,您需要獲得數據庫DROP權限。IF EXISTS用於防止當數據庫不存在時發生錯誤。 也可以使用DROP SCHEMA。
////////////刪除jack和tmp數據庫///////////// [sql] mysql> drop database jack; Query OK, 0 rows affected (0.49 sec) mysql> drop schema tmp; Query OK, 0 rows affected (0.33 sec)如果您對一個帶有符號鏈接的數據庫使用DROP DATABASE,則鏈接和原數據庫都被取消。 DROP DATABASE會返回已被取消的表的數目。此數目相當於被取消的.frm文件的數目。 在正常操作中MySQL自身會創建出一些文件和目錄。DROP DATABASE語句會從給定的數據庫目錄中取消這些文件和目錄:
================刪除表================ 語法: DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ... [RESTRICT | CASCADE]
DROP TABLE用於取消一個或多個表。您必須有每個表的DROP權限。所有的表數據和表定義會被取消,所以使用本語句要小心! 注意:對於一個帶分區的表,DROP TABLE會永久性地取消表定義,取消各分區,並取消儲存在這些分區中的所有數據。DROP TABLE還會取消與被取消的表有關聯的分區定義(.par)文件。 對與不存在的表,使用IF EXISTS用於防止錯誤發生。當使用IF EXISTS時,對於每個不存在的表,會生成一個NOTE。
///////////刪除表////////////// [sql] mysql> drop table err_table; Query OK, 0 rows affected (0.65 sec) ================重命名表============== [sql] mysql> show tables; +----------------------+ | Tables_in_monitor_db | +----------------------+ | channel_table | | err_table | | log_table | +----------------------+ 3 rows in set (0.00 sec) mysql> rename table err_table to err,channel_table to channel; Query OK, 0 rows affected (0.01 sec) mysql>
兩個表的名字對換: 語法:
RENAME TABLE old_table TO tmp_table, new_table TO old_table, tmp_table TO new_table;
實例:
[sql] mysql> rename table err to tmp,channel to err,tmp to channel; Query OK, 0 rows affected (0.00 sec) mysql>
如果兩個數據庫存在與同一個文件系統中,可以將一個數據庫的表重命名並且移動到另一個表中 語法:RENAME TABLE current_db.tbl_name TO other_db.tbl_name; 實例:
[sql] mysql> rename table monitor_db.log_table to jack2.jack; Query OK, 0 rows affected (0.02 sec)
注:如果在重命名過程中遇到了錯誤,那麼mysql會自動恢復到原來的狀態,不用擔心數據丟失或者出現錯誤!