Permalink
Browse files

Fixed #17056 -- Tweaked insert SQL clause generation so a corner case…

… doesn't fail with Oracle.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@16997 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
1 parent b7f2aba commit 5f2be4ecbb5df3760f4c6e49170478719d3026d7 @ramiro ramiro committed Oct 16, 2011
Showing with 10 additions and 1 deletion.
  1. +1 −1 django/db/models/sql/compiler.py
  2. +9 −0 tests/regressiontests/queries/tests.py
@@ -824,7 +824,7 @@ def as_sql(self):
for val in values
]
if self.return_id and self.connection.features.can_return_id_from_insert:
- params = values[0]
+ params = params[0]
col = "%s.%s" % (qn(opts.db_table), qn(opts.pk.column))
result.append("VALUES (%s)" % ", ".join(placeholders[0]))
r_fmt, r_params = self.connection.ops.return_insert_id()
@@ -1868,3 +1868,12 @@ def test_BA_BCA__BAB_BAC_BCA(self):
Q1 = Q(objecta__name='one', objectc__objecta__name='two')
Q2 = Q(objecta__objectc__name='ein', objectc__objecta__name='three', objecta__objectb__name='trois')
self.check_union(ObjectB, Q1, Q2)
+
+
+class DefaultValuesInsertTest(TestCase):
+ def test_no_extra_params(self):
+ # Ticket #17056 -- affects Oracle
+ try:
+ DumbCategory.objects.create()
+ except TypeError:
+ self.fail("Creation of an instance of a model with only the PK field shouldn't error out after bulk insert refactoring (#17056)")

0 comments on commit 5f2be4e

Please sign in to comment.