diff --git a/core/modules/file/file.install b/core/modules/file/file.install
index ab17ad8933c1569013a0f399e24889df46f212f9..2a958ebbfd99418c2bff1a6b88aebfdf150fb594 100644
--- a/core/modules/file/file.install
+++ b/core/modules/file/file.install
@@ -309,35 +309,37 @@ function file_update_8003() {
     if (in_array($field_config->get('type'), array('file', 'image'))) {
       $field = new Field($field_config->get());
 
-      $tables = array(
-        DatabaseStorageController::_fieldTableName($field),
-        DatabaseStorageController::_fieldRevisionTableName($field),
-      );
+      if (db_table_exists(DatabaseStorageController::_fieldTableName($field))) {
+        $tables = array(
+          DatabaseStorageController::_fieldTableName($field),
+          DatabaseStorageController::_fieldRevisionTableName($field),
+        );
 
-      foreach ($tables as $table_name) {
-        // Skip fields which were created during the upgrade process.
-        if (!db_field_exists($table_name, $field->name . '_fid')) {
-          continue 2;
-        }
+        foreach ($tables as $table_name) {
+          // Skip fields which were created during the upgrade process.
+          if (!db_field_exists($table_name, $field->name . '_fid')) {
+            continue 2;
+          }
 
-        db_change_field($table_name, $field->name . '_fid', $field->name . '_target_id', array(
-          'description' => 'The ID of the target entity.',
-          'type' => 'int',
-          'unsigned' => TRUE,
-          'not null' => TRUE,
-        ));
+          db_change_field($table_name, $field->name . '_fid', $field->name . '_target_id', array(
+            'description' => 'The ID of the target entity.',
+            'type' => 'int',
+            'unsigned' => TRUE,
+            'not null' => TRUE,
+          ));
 
-        // Change the index.
-        db_drop_index($table_name, $field->name . '_fid');
-        db_add_index($table_name, $field->name . '_target_id', array($field->name . '_target_id'));
-      }
+          // Change the index.
+          db_drop_index($table_name, $field->name . '_fid');
+          db_add_index($table_name, $field->name . '_target_id', array($field->name . '_target_id'));
+        }
 
-      // Update the indexes in field config as well.
-      $indexes = $field_config->get('indexes');
-      unset($indexes['fid']);
-      $indexes['target_id'] = array('target_id');
-      $field_config->set('indexes', $indexes);
-      $field_config->save();
+        // Update the indexes in field config as well.
+        $indexes = $field_config->get('indexes');
+        unset($indexes['fid']);
+        $indexes['target_id'] = array('target_id');
+        $field_config->set('indexes', $indexes);
+        $field_config->save();
+      }
     }
   }
 }
diff --git a/core/modules/taxonomy/taxonomy.install b/core/modules/taxonomy/taxonomy.install
index 39835d6942afa5096f5fffeb14962f0a28167530..875fbca3317b43704fd258eac237e2f1a2ef1b84 100644
--- a/core/modules/taxonomy/taxonomy.install
+++ b/core/modules/taxonomy/taxonomy.install
@@ -364,30 +364,32 @@ function taxonomy_update_8007() {
     if ($field_config->get('type') == 'taxonomy_term_reference') {
       $field = new Field($field_config->get());
 
-      $tables = array(
-        DatabaseStorageController::_fieldTableName($field),
-        DatabaseStorageController::_fieldRevisionTableName($field),
-      );
+      if (db_table_exists(DatabaseStorageController::_fieldTableName($field))) {
+        $tables = array(
+          DatabaseStorageController::_fieldTableName($field),
+          DatabaseStorageController::_fieldRevisionTableName($field),
+        );
 
-      foreach ($tables as $table_name) {
-        db_change_field($table_name, $field->name . '_tid', $field->name . '_target_id', array(
-          'description' => 'The ID of the target entity.',
-          'type' => 'int',
-          'unsigned' => TRUE,
-          'not null' => FALSE,
-        ));
+        foreach ($tables as $table_name) {
+          db_change_field($table_name, $field->name . '_tid', $field->name . '_target_id', array(
+            'description' => 'The ID of the target entity.',
+            'type' => 'int',
+            'unsigned' => TRUE,
+            'not null' => FALSE,
+          ));
 
-        // Change the index.
-        db_drop_index($table_name, $field->name . '_tid');
-        db_add_index($table_name, $field->name . '_target_id', array($field->name . '_target_id'));
-      }
+          // Change the index.
+          db_drop_index($table_name, $field->name . '_tid');
+          db_add_index($table_name, $field->name . '_target_id', array($field->name . '_target_id'));
+        }
 
-      // Update the indexes in field config as well.
-      $indexes = $field_config->get('indexes');
-      unset($indexes['tid']);
-      $indexes['target_id'] = array('target_id');
-      $field_config->set('indexes', $indexes);
-      $field_config->save();
+        // Update the indexes in field config as well.
+        $indexes = $field_config->get('indexes');
+        unset($indexes['tid']);
+        $indexes['target_id'] = array('target_id');
+        $field_config->set('indexes', $indexes);
+        $field_config->save();
+      }
     }
   }
 }