Title: How to DROP TABLE from database
Last modified: August 19, 2016

---

# How to DROP TABLE from database

 *  [MadScout](https://wordpress.org/support/users/madscout/)
 * (@madscout)
 * [17 years, 1 month ago](https://wordpress.org/support/topic/how-to-drop-table-from-database/)
 * I’m working on a plugin which creates a table on activation. How do I drop that
   table on deactivation? Here is my code so far, but all it does is create the 
   table, not delete it on deactivation.
 *     ```
       ...other functions and things...
       function POD_deactivate()
       {
       	global $wpdb;	//required global declaration of WP variable
   
       	$table_name = $wpdb->prefix.POD_table_name;
   
       	$sql = "DROP TABLE ". $table_name;
   
       	$wpdb->query($sql);
   
       }
       register_activation_hook(__FILE__,'POD_install');
       register_deactivation_hook(__('POD') , 'POD_deactivate' );
       ?>
       ```
   

Viewing 3 replies - 1 through 3 (of 3 total)

 *  [laqrhead](https://wordpress.org/support/users/laqrhead/)
 * (@laqrhead)
 * [17 years, 1 month ago](https://wordpress.org/support/topic/how-to-drop-table-from-database/#post-1078130)
 * I don’t know how to answer your question, but it would seem to me that you may
   want to leave the tables in place in case the the user decides to re-enable the
   plugin, the previous data is still in place. You’ve probably already thought 
   of that though.
 *  [NomikOS](https://wordpress.org/support/users/nomikos/)
 * (@nomikos)
 * [16 years, 10 months ago](https://wordpress.org/support/topic/how-to-drop-table-from-database/#post-1078342)
 * probably the DB user that run your blog installation do not have drop privileges.
 * ———————-
 * you can view errors inside of a function:
 *     ```
       $sql = "DROP TABLE IF_EXISTS $table_name;";
       $e = $wpdb->query($sql);
       die(var_dump($e));
       ```
   
 *  [Marty](https://wordpress.org/support/users/mrthrust/)
 * (@mrthrust)
 * [16 years, 4 months ago](https://wordpress.org/support/topic/how-to-drop-table-from-database/#post-1078375)
 * how about….
 *     ```
       function pluginUninstall() {
   
               global $wpdb;
               $table = $wpdb->prefix."your_table_name";
   
               //Delete any options thats stored also?
       	//delete_option('wp_yourplugin_version');
   
       	$wpdb->query("DROP TABLE IF EXISTS $table");
       }
       ```
   
 * than all you do is hook into wordpress when its being de-activated
 * `register_deactivation_hook( __FILE__, 'pluginUninstall' );`
 * that should clean up the database a little..

Viewing 3 replies - 1 through 3 (of 3 total)

The topic ‘How to DROP TABLE from database’ is closed to new replies.

## Tags

 * [drop table](https://wordpress.org/support/topic-tag/drop-table/)
 * [query](https://wordpress.org/support/topic-tag/query/)
 * [sql](https://wordpress.org/support/topic-tag/sql/)

 * 3 replies
 * 4 participants
 * Last reply from: [Marty](https://wordpress.org/support/users/mrthrust/)
 * Last activity: [16 years, 4 months ago](https://wordpress.org/support/topic/how-to-drop-table-from-database/#post-1078375)
 * Status: not resolved

## Topics

### Topics with no replies

### Non-support topics

### Resolved topics

### Unresolved topics

### All topics
