2017-11-11 78 views
0

我剛剛進入SQL來完成一些數據科學,並想知道爲什麼我的代碼正在運行,但沒有以任何方式影響MySQL數據庫。我正在使用pycharm和MySQLdb模塊。在Python中使用MySQL命令

import MySQLdb 
db = MySQLdb.connect(host="localhost", 
         user="root", 
         passwd="********", #Password blocked 
         db="test") 
cur = db.cursor() 
cur.execute("SELECT * FROM movies") 
cur.execute("Update movies set genre = 'action' where id = 1") 
for row in cur.fetchall() : 
    print row[0], " ", row[1], " ", row[2] 

我的代碼運行並沒有返回錯誤,但是當我刪除

cur.execute("Update movies set genre = 'action' where id = 1") 

線,它只是打印出表格,因爲它以前。僅供參考,這裏是表:

1星際科幻

2托爾:仙境傳說行動

3雷神:黑暗世界行動

我怎樣才能使蟒蛇的命令實際上影響到桌子?非常感謝你的幫助!

回答

0

使用cur.commit()將更改提交到數據庫提交表中所做的更改。另外,一旦完成,您應該使用cur.close()關閉數據庫。