]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
- Cleaned up visit_insert a bit, inserts are ~3% faster now.
authorJason Kirtland <jek@discorporate.us>
Mon, 8 Oct 2007 18:19:02 +0000 (18:19 +0000)
committerJason Kirtland <jek@discorporate.us>
Mon, 8 Oct 2007 18:19:02 +0000 (18:19 +0000)
lib/sqlalchemy/sql/compiler.py

index 50664db16f459f9662982838ac29210db442bbc0..572955806a803d6f5a323df3ff5a03a40857072e 100644 (file)
@@ -606,13 +606,16 @@ class DefaultCompiler(engine.Compiled, visitors.ClauseVisitor):
         return None
 
     def visit_insert(self, insert_stmt):
-
         self.isinsert = True
         colparams = self._get_colparams(insert_stmt)
+        preparer = self.preparer
 
-        return ("INSERT INTO " + self.preparer.format_table(insert_stmt.table) + " (" + string.join([self.preparer.format_column(c[0]) for c in colparams], ', ') + ")" +
-         " VALUES (" + string.join([c[1] for c in colparams], ', ') + ")")
-
+        return ("INSERT INTO %s (%s) VALUES (%s)" %
+                (preparer.format_table(insert_stmt.table),
+                 ', '.join([preparer.format_column(c[0])
+                            for c in colparams]),
+                 ', '.join([c[1] for c in colparams])))
+    
     def visit_update(self, update_stmt):
         self.stack.append({'from':util.Set([update_stmt.table])})