============删除数据库=============
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会自动恢复到原来的状态,不用担心数据丢失或者出现错误!