#python #mysql
#python #mysql
Вопрос:
Я использую Openshift и mysql-python
установил на свой локальный компьютер и удаленно
Код, вызывающий ошибку, представляет собой следующую строку:
cursor.execute("insert into Quotes (A_ID, F_ID, C_ID, Quote, Quote_Time, Rating, Votes) values (%s, %s, %s, %s, %s, %s, %s)", (aid, fid, cid, quote, 120, 0, 0))
Я получаю следующую ошибку удаленно, но не локально:
(1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '), ('2',), ('2',), 'Do not take me for a conjurer of tricks', 120, 0, 0)' at line 1")
Я почти уверен, что одна и та же версия mysql
установлена на обоих, поскольку я только что запускал pip install mysql-python
удаленно и локально
Есть идеи?
Комментарии:
1. Эй, Грег, если я не ошибаюсь, у вас есть семь переменных %s, но вводится шесть значений.
2. что в
aid
?3. Спасибо за ответы, ребята. Я насчитал 7 значений.
aid
это просто внешний ключ, как и некоторые другие поля4. Согласно ошибке, первые три значения, которые вы передаете,
cursor.execute
являются кортежами, а не скалярами. Я бы сделал acursor.execute
тем, чтобы вы могли убедиться, что они скалярны.5. Либо это сбой, потому что у вас неправильная цитата , либо проблема в том, что сказал 2ps.