﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
22168	"Sqlite3 backend fails during _remake_table with column named ""order"""	netwamp@…	nobody	"It seems that column names should be quoted, cause if I try migrate my app, migration fails on following sql request:
{{{#!sql
INSERT INTO ""services_group__new"" (description, order, id, slug, title) SELECT description, order, id, slug, title FROM ""services_group""
}}}

If I try it in db shell, it fails too, as expected.
Message is ""Error: near ""order"": syntax error""

Adding quotes around column names in django.db.backends.sqlite3.schema.DatabaseSchemaEditor._remake_table fixes the problem for me:
{{{#!diff
diff --git a/django/db/backends/sqlite3/schema.py b/django/db/backends/sqlite3/schema.py
index 279ac4b..e8fc263 100644
--- a/django/db/backends/sqlite3/schema.py
+++ b/django/db/backends/sqlite3/schema.py
@@ -83,8 +83,8 @@ class DatabaseSchemaEditor(BaseDatabaseSchemaEditor):
         field_maps = list(mapping.items())
         self.execute(""INSERT INTO %s (%s) SELECT %s FROM %s"" % (
             self.quote_name(temp_model._meta.db_table),
-            ', '.join(x for x, y in field_maps),
-            ', '.join(y for x, y in field_maps),
+            ', '.join(self.quote_name(x) for x, y in field_maps),
+            ', '.join(self.quote_name(y) for x, y in field_maps),
             self.quote_name(model._meta.db_table),
         ))
         # Delete the old table
}}}"	Bug	closed	Migrations	dev	Release blocker	fixed			Ready for checkin	1	0	0	0	1	0
