У меня возникли проблемы с обновлением строки в базе данных MySQL. Вот код, который я пытаюсь запустить:
import MySQLdb
conn=MySQLdb.connect(host="localhost", user="root", passwd="pass", db="dbname")
cursor=conn.cursor()
cursor.execute("UPDATE compinfo SET Co_num=4 WHERE ID=100")
cursor.execute("SELECT Co_num FROM compinfo WHERE ID=100")
results = cursor.fetchall()
for row in results:
print row[0]
print "Number of rows updated: %d" % cursor.rowcount
cursor.close()
conn.close()
Выход, который я получаю при запуске этой программы, это:
4
Количество обновленных строк: 1
Кажется, что он работает, но если я запрошу базу данных из интерфейса командной строки MySQL (CLI), я обнаружил, что он вообще не обновлялся. Однако, если из CLI я вхожу UPDATE compinfo SET Co_num=4 WHERE ID=100;
, база данных обновляется, как ожидалось.
В чем моя проблема? Я запускаю Python 2.5.2 с MySQL 5.1.30 в окне Windows.