2017-01-25 3 views
0

Я работаю над БДОМ и у меня возникают проблемы при использовании pymysql для вставки некоторых значенийВставка данных с помощью pymysql входов

cur.execute("""INSERT INTO orders (name, size, type, is_done) VALUES (%s, %s, %s, %s)""" 
% (name, size, type, is_done)) 

Где имя, размера и типа являются строками и is_done является BOOL

это дает мне типичную ошибку 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, поэтому я полагаю, что проблема является ', но как я могу решить эту проблему?

Редактировать

Я должен также добавить, что значение имени извлекается из MySQL DB

+0

проверить, какой запрос действительно выполняется. http://stackoverflow.com/questions/7071166/print-the-actual-query-mysqldb-runs Я думаю, эта ссылка может вам помочь. – huhushow

+0

Спасибо, но я видел, что команда действительно выполнена, так что это тупик ... – Mikicat

+0

Так что, вы могли бы показать вычитанный запрос? – huhushow

ответ

0

Я нашел эту проблему, которая была, что вместо cur.execute("""INSERT INTO orders (name, size, type, is_done) VALUES (%s, %s, %s, %s)""" % (name, size, type, is_done))
я должен был сделать cur.execute("""INSERT INTO orders (name, size, type, is_done) VALUES ("%s", "%s", "%s", "%s")""" % (name, size, type, is_done))