Index: django/db/backends/sqlite3/base.py
===================================================================
--- django/db/backends/sqlite3/base.py	(revisión: 9781)
+++ django/db/backends/sqlite3/base.py	(copia de trabajo)
@@ -186,19 +186,25 @@
     you'll need to use "%%s".
     """
     def execute(self, query, params=()):
-        query = self.convert_query(query, len(params))
+        query = self.convert_query(query, params)
         return Database.Cursor.execute(self, query, params)
 
     def executemany(self, query, param_list):
         try:
-          query = self.convert_query(query, len(param_list[0]))
+          query = self.convert_query(query, param_list[0])
           return Database.Cursor.executemany(self, query, param_list)
         except (IndexError,TypeError):
           # No parameter list provided
           return None
 
-    def convert_query(self, query, num_params):
-        return query % tuple("?" * num_params)
+    def convert_query(self, query, params):
+        if type(params) == dict:
+            new_query = query
+            for param in params:
+                new_query = new_query.replace("%("+param+")s",":"+param)
+            return new_query
+        else:
+            return query % tuple("?" * len(params))
 
 def _sqlite_extract(lookup_type, dt):
     if dt is None:
