gpt4 book ai didi

python - 为什么 mysql Insert 命令在 python 中对我不起作用?

转载 作者:行者123 更新时间:2023-11-29 16:14:54 25 4
gpt4 key购买 nike

查询是正确的,但我不明白为什么它不能添加到我的数据库中。请帮助我谢谢。我是初学者,我很难调试这个。

    def callback(channel):
print("\nflame detected\n")

GPIO.add_event_detect(channel, GPIO.BOTH, bouncetime=300)#pin if HIGH or LOW
GPIO.add_event_callback(channel, callback)


while True:

db = MySQLdb.connect(host="localhost", user="root", passwd="password", db="results")
#create a cursor for the select
cur = db.cursor()
result = instance.read()
if result.is_valid():
print("Last valid input: " + str(datetime.datetime.now()))
print("Temperature: %d C" % result.temperature)
print("Temperature: %d F" % ((result.temperature*9/5)+32))
print("Humidity: %d %%" % result.humidity)

cel = str(result.temperature)
far = str((result.temperature*9/5)+32)
hum = str(result.humidity)
fla = "No Flame"




#execute an sql query
sql = "INSERT INTO res(celsius,fahrenheit,humidity,flame) VALUES('"+cel+"','"+far+"','"+hum+"','"+fla+"')"
cur.execute(sql)

# close the cursor
cur.close()

# close the connection
db.close ()
time.sleep(1)

最佳答案

你可以尝试...

sql = "INSERT INTO res(celsius,fahrenheit,humidity,flame) VALUES(%s,%s,%s,%s)"
data = (cel, far, hum, fla)

指定需要的值并使其更清晰,而且您还缺少db.commit()

cur.execute(sql, data) 这样您就执行了命令,并将其值传递给 sql

然后您可以提交您的数据库。

db.commit()

然后关闭连接。

关于python - 为什么 mysql Insert 命令在 python 中对我不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54914096/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com