2013-10-14 3 views
-2

Я создал таблицу mysql, например ----> create table test (gender char (1));(1054, "Неизвестный столбец 'm' в 'списке полей' ')

мой питон Судо код ---->

from pymysql import * 
g='m' 
sql='insert into test values(%s)' %g 
cur.execute(sql) 
con.commit() 
con.close() 

но дает мне ошибки ---> (1054, "Неизвестный столбец 'м' в 'списке полей'")

плз помочь мне решить это

+2

Сообщение об ошибке достаточно пояснительно. Что вы не понимаете? –

+0

Я знаю, что это не ответ, но почему вы не пытаетесь использовать полное предложение «INSERT INTO test() VALUES()»? – opalenzuela

+0

chut marinaaa aise quesion nai dalte – Neel

ответ

3

'insert into test values(%s)' %g 

расширяется

'insert into test values(m)' 

, который явно не то, что вы хотите (что m?)

Моя рекомендация состоит в том, чтобы использовать параметры связывания:

g = 'm' 
sql = 'insert into test values(?)' 
cur.execute(sql, g) 

Для получения дополнительной информации см How to use variables in SQL statement in Python?

0

Вы следует попробовать:

'insert into test() values('%s')' %g ... this is because the variable g is a Строка и после t он добавляет, что вы делаете это должно выглядеть следующим образом:

«вставить тест() значения („т“)», а не «вставить тест() значения (м)»

<>

cheers

Смежные вопросы