Как исправить «рядом»): синтаксическая ошибка в sqlite

Я работаю с Python и SQLite. постоянно получаю это сообщение

"near ")": syntax error".

Я пытался добавить точку с запятой ко всем запросам, но все равно получаю это сообщение об ошибке.

tables.append("""
                        CREATE TABLE IF NOT EXISTS payment (
                            p_id integer PRIMARY KEY,
                            o_id integer NON NULL,
                            FOREIGN KEY(o_id) REFERENCES orders(o_id),
                        );"""
                        )
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
0
6 076
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

У вас стоит запятая перед окончательным закрытием ). Просто удалите его.

то есть использовать: -

tables.append("""
                        CREATE TABLE IF NOT EXISTS payment (
                            p_id integer PRIMARY KEY,
                            o_id integer NON NULL,
                            FOREIGN KEY(o_id) REFERENCES orders(o_id)
                        );"""
                        )

Я понял. Я собирался ответить сам, потому что вы, ребята, сделали это первыми.

Sawaid 25.05.2019 07:35

Уберите запятую в конце FOREIGN KEY(o_id) REFERENCES orders(o_id),

Рабочий код будет:

tables.append("""
    CREATE TABLE IF NOT EXISTS payment (
        p_id integer PRIMARY KEY,
        o_id integer NON NULL,
        FOREIGN KEY(o_id) REFERENCES orders(o_id)
    );"""
)

Я понял. Я собирался ответить сам, потому что вы, ребята, сделали это первыми.

Sawaid 25.05.2019 07:35

Попробуй это:

tables = []
tables.append("""
CREATE TABLE IF NOT EXISTS payment p_id integer PRIMARY KEY,
o_id integer NON NULL FOREIGN KEY(o_id) REFERENCES orders(o_id),
              """)                                
print(tables)

Был , после последнего утверждения. Удаление исправило ошибку.

Sawaid 25.05.2019 07:37

Другие вопросы по теме