diff --git a/search_api_db.install b/search_api_db.install
index d073dda..b1e52e8 100644
--- a/search_api_db.install
+++ b/search_api_db.install
@@ -65,3 +65,16 @@ function search_api_db_update_7101() {
       ->execute();
   }
 }
+
+/**
+ * Implements hook_update_N().
+ *
+ * Solves index problems with umlauts, accented characters, etc. issue http://drupal.org/node/1144620.
+ */
+function search_api_db_update_7102() {
+  $search_api_tables = db_query("show tables LIKE '%search_api_db%';")->fetchCol();
+  foreach ($search_api_tables as $table) {
+    db_query("ALTER TABLE {$table} CONVERT TO CHARACTER SET 'utf8' COLLATE 'utf8_bin'")
+    ->execute();
+  }
+}
\ No newline at end of file
diff --git a/service.inc b/service.inc
index 6b6e7f6..b8f292f 100644
--- a/service.inc
+++ b/service.inc
@@ -192,6 +192,7 @@ class SearchApiDbService extends SearchApiAbstractService {
 
     $set = $this->setDb();
     db_create_table($name, $table);
+    db_query("ALTER TABLE {$name} CONVERT TO CHARACTER SET 'utf8' COLLATE 'utf8_bin'")->execute();
     if ($set) {
       $this->resetDb();
     }
