【问题标题】:Python INSERT won't write to database [duplicate]Python INSERT不会写入数据库[重复]
【发布时间】:2016-02-10 20:36:38
【问题描述】:

所有数据库名和表名都正确。 python 脚本运行没有错误,但值永远不会写入数据库(表保持为空)`

datetimenowDB = str(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"))
deviceDB = "ALARM"
statusDB = "Tripped" 
typeDB = "None"
try:
    db = MySQLdb.connect(
    host="localhost",
    user="root",
    passwd="toor",
    db="log_database")
except Exception as e:
sys.exit('Cant get into database.')

c = db.cursor()

c.execute("INSERT INTO control_log (date_time, device, status, type) VALUES (%s,%s,%s,%s)",
(datetimenowDB, deviceDB, statusDB, typeDB))

【问题讨论】:

    标签: python mysql


    【解决方案1】:

    MySQLdb 会自动为您启动一个事务。完成更改后,您需要致电 db.commit()。

    See this tutorial.

    【讨论】:

    • 或设置db.autocommit = True。
    • @KevinGuan 技术上正确!但事务对于性能很重要,更重要的是,对于数据安全。打开自动提交,后果自负。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-18
    • 2020-03-02
    • 1970-01-01
    • 2017-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多