diff --git a/django/core/db/backends/mysql.py b/django/core/db/backends/mysql.py index 0e31af13fc..643b51fcd4 100644 --- a/django/core/db/backends/mysql.py +++ b/django/core/db/backends/mysql.py @@ -126,7 +126,7 @@ def get_table_list(cursor): def get_table_description(cursor, table_name): "Returns a description of the table, with the DB-API cursor.description interface." - cursor.execute("SELECT * FROM %s LIMIT 1" % table_name) + cursor.execute("SELECT * FROM %s LIMIT 1" % DatabaseWrapper.quote_name(table_name)) return cursor.description def get_relations(cursor, table_name): diff --git a/django/core/db/backends/postgresql.py b/django/core/db/backends/postgresql.py index a4ce5b39ee..c2eb072cdb 100644 --- a/django/core/db/backends/postgresql.py +++ b/django/core/db/backends/postgresql.py @@ -102,7 +102,7 @@ def get_table_list(cursor): def get_table_description(cursor, table_name): "Returns a description of the table, with the DB-API cursor.description interface." - cursor.execute("SELECT * FROM %s LIMIT 1" % table_name) + cursor.execute("SELECT * FROM %s LIMIT 1" % DatabaseWrapper().quote_name(table_name)) return cursor.description def get_relations(cursor, table_name): diff --git a/django/core/db/backends/sqlite3.py b/django/core/db/backends/sqlite3.py index 1a4a80d632..3d466a60c6 100644 --- a/django/core/db/backends/sqlite3.py +++ b/django/core/db/backends/sqlite3.py @@ -128,7 +128,7 @@ def get_table_list(cursor): return [row[0] for row in cursor.fetchall()] def get_table_description(cursor, table_name): - cursor.execute("PRAGMA table_info(%s)" % table_name) + cursor.execute("PRAGMA table_info(%s)" % DatabaseWrapper.quote_name(table_name)) return [(row[1], row[2], None, None) for row in cursor.fetchall()] def get_relations(cursor, table_name):