Python sqlite3 OperationalError в простом создании таблицы - PullRequest
1 голос
/ 17 марта 2020

вот код

def __init__(self):
    self._db = sqlite3.connect("Reservation.db")
    self._db.row_factory = sqlite3.Row
    self._db.execute("create table if not exists Ticket(ID integer primary key autoincrement, Name text, Gender text, Order text)")#create a table called Ticket with 4 columns
    self._db.commit()

the proplem

self._db.execute ("создать таблицу, если не существует Ticket (идентификатор целочисленного первичного ключа автоинкремент, текст имени, текст пола, Текст заказа) ") sqlite3.OperationalError: рядом с" Заказ ": синтаксическая ошибка

1 Ответ

0 голосов
/ 17 марта 2020

order является зарезервированным словом в SQL. Я предлагаю вам найти другое имя, которое не является зарезервированным словом (например, order_text) для столбца. Если вам абсолютно необходимо использовать это имя, вы можете избежать его, заключив его в двойные кавычки ("):

self._db.execute("create table if not exists Ticket(ID integer primary key autoincrement, Name text, Gender text, \"Order\" text)
# Here -----------------------------------------------------------------------------------------------------------^------^
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...