============删除数据库=============



DROP DATABASE 用于取消数据库中的所用表格和取消数据库。使用此语句时要非常小心!如果要使用 DROP DATABASE ,您需要获得数据库 DROP 权限。 IF EXISTS 用于防止当数据库不存在时发生错误。



也可以使用DROP SCHEMA。



删除jack和tmp数据库/



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。


///删除表//


mysql> drop table err_table;
Query OK, 0 rows affected (0.65 sec)







================重命名表==============



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;


实例:



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;


实例:


mysql> rename table monitor_db.log_table to jack2.jack;
Query OK, 0 rows affected (0.02 sec)







注:如果在重命名过程中遇到了错误,那么mysql会自动恢复到原来的状态,不用担心数据丢失或者出现错误!