diff --git a/src/libtracker-data/tracker-data-update.c b/src/libtracker-data/tracker-data-update.c
index eb41b82..9d0a8b6 100644
--- a/src/libtracker-data/tracker-data-update.c
+++ b/src/libtracker-data/tracker-data-update.c
@@ -1673,7 +1673,8 @@ tracker_data_delete_resource_description (const gchar *uri, GError **error)
 {
 	TrackerDBInterface *iface;
 	TrackerDBStatement *stmt;
-	TrackerDBCursor    *cursor, *single_cursor, *multi_cursor;
+	TrackerDBCursor    *cursor, *multi_cursor;
+	TrackerDBResultSet *single_result;
 	TrackerClass	   *class;
 	GString		   *sql;
 	TrackerProperty	  **properties, **property;
@@ -1725,13 +1726,13 @@ tracker_data_delete_resource_description (const gchar *uri, GError **error)
 				}
 			}
 
-			single_cursor = NULL;
+			single_result = NULL;
 			if (!first) {
 				g_string_append_printf (sql, " FROM \"%s\" WHERE ID = ?", tracker_class_get_name (class));
 				stmt = tracker_db_interface_create_statement (iface, "%s", sql->str);
 				tracker_db_statement_bind_int (stmt, 0, resource_id);
-				single_cursor = tracker_db_statement_start_cursor (stmt, NULL);
-				tracker_db_cursor_iter_next (single_cursor);
+				single_result = tracker_db_statement_execute (stmt, NULL);
+				tracker_db_result_set_iter_next (single_result);
 				g_object_unref (stmt);
 			}
 
@@ -1753,15 +1754,18 @@ tracker_data_delete_resource_description (const gchar *uri, GError **error)
 				}
 
 				if (!tracker_property_get_multiple_values (*property)) {
+					gchar *str;
+
 					/* single value property, value in single_result_set */
 
-					value = tracker_db_cursor_get_string (single_cursor, i++);
+					tracker_db_result_set_get (single_result, i++, &str, -1);
 
-					if (value) {
+					if (str) {
 						tracker_data_delete_statement (uri, 
 						                               tracker_property_get_uri (*property), 
-						                               value, 
+						                               str, 
 						                               error);
+						g_free (str);
 					}
 
 				} else {
@@ -1801,7 +1805,7 @@ tracker_data_delete_resource_description (const gchar *uri, GError **error)
 			}
 
 			if (!first) {
-				g_object_unref (single_cursor);
+				g_object_unref (single_result);
 			}
 
 		}