diff -rupN taxonomy_context/taxonomy_context.install taxonomy_context_new/taxonomy_context.install
--- taxonomy_context/taxonomy_context.install	2009-02-27 05:52:50.000000000 +1100
+++ taxonomy_context.install	2010-02-01 10:34:05.000000000 +1100
@@ -25,9 +25,19 @@ function taxonomy_context_install() {
   }
 }
 
+/**
+ * Implementation of hook_update_N().
+ */
 function taxonomy_context_update_2() {
-  db_query("DROP TABLE IF EXISTS {taxonomy_context_vocabulary}, {taxonomy_context_term}, {taxonomy_context}");
-  taxonomy_context_install();  
+  $ret = array();
+  $ret[] = update_sql("DROP TABLE IF EXISTS {taxonomy_context_vocabulary}, {taxonomy_context_term}, {taxonomy_context}");
+  $ret[] = update_sql("CREATE TABLE {taxonomy_context} (
+                         id int(10) unsigned NOT NULL default '0',
+                         type enum('vocabulary','term') NOT NULL default 'term',
+                         format int(4) NOT NULL default '0',
+                         KEY (id,type)
+                       ) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");
+  return $ret;
 }
 
 /**
