尝试使用用户输入使用Python MySQL更新表

时间:2018-11-18 11:24:57

标签: python mysql

我正在和有类似问题的人一起讨论问题,但是我找不到有效的解决方案。

基本上,我正在尝试在Python中创建一个程序,要求人们提供某些信息。然后将它们放入MySQL表中。我已将INSERT的一部分固定下来,并且效果很好。但是,我正在努力对其进行更新(以及删除)。我已经尝试了几种不同的方法,但是我无法使其正常工作。

    ename = input("What is the employees name?")
    enumber = int(input("What is the employees number?"))
    address = input("What is the employees address")
    dworked = int(input("How many days have they worked?"))
    holiday = input("Are they on holiday?")


mycursor.execute("INSERT INTO roster VALUES (%s, %s, %s, %s, %s)", (ename, enumber, address, dworked, holiday))

mydb.commit()

那是可以正常工作的部分。

我对UPDATING部分感到非常困惑,因为我不确定如何选择要更新的表的特定行,或者一旦选择了特定行后如何更新它。我相信我可能必须输入要求用户选择特定行的输入。还是可以编写代码来识别输入中的某个属性并意识到那是必须更新的行?

update = input("Enter employee name")
    mycursor.execute("UPDATE roster SET update='%s' WHERE ename = '%s'")
    mydb.commit()

在这个阶段我可能只是想得太多,但我真的很困惑。任何帮助将非常感激。

谢谢。

1 个答案:

答案 0 :(得分:0)

empName = input("Enter employee name")
update = input("Enter new value")
sqlFormula = "UPDATE tableName SET columnName=%s WHERE empName = %s"
mycursor.execute(sqlFormula,(updateValue,empName))
mydb.commit()
#update = the value/name of the column you want to update
#empName = the name of the employee whose values you want to update

希望它对我有用:)