我在配置文件中提供的用户提供的信息很少,例如username
, password
,等。email
我使用 configParser 模块从配置文件中解析数据。
我想将这些信息输入到 MySQL 数据库中。
数据是这样的:
Usename="ABC"
password="ABC@1"
email="abc123@xyz.com"
我的插入语句是这样的:
"INSERT INTO userinfo (group_ID, rank_ID, login, password, first_name, last_name, email) VALUES ('" + groupid + "', '" + rankID + "', '" + userid + "', '" + password + "', '" + fname + "', '" + lname + "', '" + email + "')"
但它没有执行,因为我收到一个错误:
TypeError: cannot concatenate 'str' and 'long' objects
我试过做:str(password)
,str(email)
对于混合类型的变量,但没有运气。
这里group_ID
和rank_ID
是整数。
我按照其中一位专家的建议尝试了以下方法:
sql = "INSERT INTO userinfo (group_ID, rank_ID, login, password, first_name, last_name, email) "
"VALUES (%s, %s, %s, %s, %s, %s, %s)",
(groupid, rankID, userid, password, fname, lname, email)
try:
c.execute(sql4)
conn.commit()
except StandardError, e:
print e
conn.rollback()
但我得到的错误是:query() argument 1 must be string or read-only buffer, not tuple
可能的解决方案是什么?