Как я могу проверить, почему мой запрос INSERT не работает? - PullRequest
0 голосов
/ 17 марта 2012
conn = MySQLdb.connect(host=IP,user='john',passwd='ab2nng',db='mydb')
cursor = conn.cursor()

#this works.
cursor.execute("select * from crawl_log")
res = cursor.fetchall()
print res

#this doesn't work.
cursor.execute("insert into crawl_log(k, v) values(%s, %s)", ('test','test'))

Откуда я знаю, почему это не сработало? Нет ошибок печати, ничего.

Ответы [ 2 ]

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

По умолчанию он запускает транзакцию, которую необходимо будет зафиксировать после любого оператора, который влияет на изменение данных. Вы пробовали conn.commit() после вставки?

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

Типичная причина такой проблемы - неправильное написание имени строки / таблицы / базы данных

, пожалуйста, проверьте еще раз, это всегда главная проблема, из-за которой я все испортилаявляется то, что имя строки / таблицы / базы данных может быть слишком коротким, чтобы исправить это добавление '' вокруг имени, например, ключ будет 'ключ'

надеюсь, это решит вашу проблему

...