【发布时间】:2022-01-20 13:41:44
【问题描述】:
我有一个查询作为 python 代码的一部分,其中查询需要使用程序中的变量以及来自另一个数据库的值。我正在使用 mysql-connector-python。
name 的值存在于 python 程序中,我想使用该值和表 metrics 中的值将值插入表 points。
这是我迄今为止尝试过的:
class summer:
def __init__(self, name):
self.name = name
def sum_fun(self, name):
try:
con = mysql.connector.connect(host='localhost',
database='databasename', user='root', password='mypasword', charset='utf8')
if con.is_connected():
cursor = con.cursor(buffered=True)
def create_points_table():
query=("INSERT INTO points(username, sale,comm,dank) VALUES (%s, (SELECT SUM(regional + intnl) * 150, SUM(commission) * 50, SUM(thank_discount) * 10 FROM Metrics))")
cursor.execute(query, (name))
con.commit()
create_points_table();
except Error as e:
print(e)
cursor.close()
con.close()
查询:
query=("INSERT INTO points(username, sale,comm,dank)
VALUES (%s,
(SELECT
SUM(regional + intnl) * 150,
SUM(commission) * 50,
SUM(thank_discount) * 10 FROM Metrics))")
查询调用:
cursor.execute(query, (name))
没有任何值被插入到点表中。我在这里做错了什么?
【问题讨论】:
标签: mysql sql sql-insert mysql-connector-python