我想通过python脚本在数据库表中插入一行。列字段值以不同格式的变量保存:字符串,整数和浮点数。我在论坛上搜索,尝试了其他选项,但没有人在工作
我尝试了以下选项:
cursor.execute('INSERT INTO table(device, number1, number2) VALUES (%s,%d,%f)',(device_var,number1_var, number2_var))
我也尝试过:
cursor.execute('INSERT INTO table(device, number1, number2) VALUES ({0},{1},{2})',(device_var,number1_var, number2_var))
和
cursor.execute('INSERT INTO table(device, number1, number2) VALUES ({0},{1},{2})'.format (device_var,number1_var, number2_var))
ERROR:OperationalError:(1054,“字段列表”中的未知列“ device_var_content”)
我也尝试过这个,看看表中是否有问题,但这行得通:
cursor.execute('INSERT INTO table(device,number1,number2)VALUES(“ dev1”,1,2.4)'
谢谢你的时间
解决了:
cursor.execute('INSERT INTO table(device, number1, number2) VALUES ("{}",{},{})'.format (string_var,number1_var, number2_var))
感谢您的帮助,您的答案为我提供了继续寻找的方式。
最佳答案
您可以使用参数绑定。您无需担心要传递的变量的数据类型。
cursor.execute('INSERT INTO table(device, number1, number2) VALUES (?, ?, ?)', ("dev1",1,2.4))
关于python - Python MySQL INSERT INTO表如何从不同格式的变量传递值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46909017/