When a database is no longer needed, it can be removed with DROP DATABASE:
DROP DATABASE my_db;
It is an error if the database does not exist. To cause a warning instead, include an IF EXISTS clause;
DROP DATABASE IF EXISTS my_db;
Any warning generated when IF EXISTS is used can be displayed with SHOW WARNINGS.
DROP DATABASE does not require the database to be empty. When dropping the database, MySQL removes any objects that it contains; such as tables, stored procedures, triggers, etc.
A successful DROP DATABASE returns a row count that indicates the number of tables dropped. (This actually is the number of .frm files removed, which amounts to the same thing.) Use the SHOW DATABASES command to verify that the database has been dropped.
CAUTION: When Using DROP DATABASE
A database is represented by a directory under the data directory. The server deletes only files and directories that it can identify as having been created by itself (for example, .frm files or RAID directories). It does not delete other files and directories. If a non-table files have been placed in that directory, those files are not deleted by the DROP DATABASE command. This results in failure to remove the database directory and DROP DATABASE fails. In that case, the database will continue to be listed by SHOW DATABASES. To correct this problem, manually remove the database directory and any files within it.
Comments
Post a Comment