diff --git a/entityreference.install b/entityreference.install
index 54587ff..3e03480 100644
--- a/entityreference.install
+++ b/entityreference.install
@@ -156,15 +156,21 @@ function entityreference_update_7001() {
 
     db_drop_field($table_name, $field_name . '_target_type');
     db_drop_index($table_name, $field_name . '_target_entity');
-    db_add_index($table_name, $field_name . '_target_id', array($field_name . '_target_id'));
+    if (!db_index_exists($table_name, $field_name . '_target_id')) {
+      db_add_index($table_name, $field_name . '_target_id', array($field_name . '_target_id'));
+    }
 
     db_drop_field($revision_name, $field_name . '_target_type');
     db_drop_index($revision_name, $field_name . '_target_entity');
-    db_add_index($revision_name, $field_name . '_target_id', array($field_name . '_target_id'));
+    if (!db_index_exists($revision_name, $field_name . '_target_id')) {
+      db_add_index($revision_name, $field_name . '_target_id', array($field_name . '_target_id'));
+    }
 
     // Update the field settings.
-    $field = field_info_field($field_name);
-    $field['indexes'] = array('target_id' => array('target_id'));
-    field_update_field($field);
+    if (!db_index_exists($table_name, $field_name . '_target_id')) {
+      $field = field_info_field($field_name);
+      $field['indexes'] = array('target_id' => array('target_id'));
+      field_update_field($field);
+    }
   }
 }
