首页 > 解决方案 > 这个语法对于 mysql 的 python 插入操作是否正确?我收到错误 - TypeError: 'str' object is not callable?

问题描述

cmd="insert into People(ID,Name,Age,Gender,CriminalRecords)values("+str(Id)+","+str(Name)+","+str(Age)+","+str(Gender)+","+str(Criminal)+")"

标签: mysqlpython-3.x

解决方案


作为字符串的值需要在它们周围加上引号。

但最好使用带参数的查询而不是连接变量。

cmd="insert into People(ID,Name,Age,Gender,CriminalRecords)values(%s, %s, %s, %s, %s)"
cursor.execute(cmd, (Id, Name, Age, Gender, Criminal))
conn.commit()

cursor和替换conn为包含光标和连接对象的实际变量。


推荐阅读