2 回答

TA貢獻1821條經驗 獲得超5個贊
您正在為“money”字典中的每個元素插入,因為它處于循環中。您需要在同一個 json 文件中循環多個帳戶嗎?如果不是,則不需要循環
def getData():
databaseConn = dbConnect()
cursor = databaseConn.cursor()
delete = "TRUNCATE TABLE bank"
try:
cursor.execute(delete)
databaseConn.commit()
except:
print("Delete error")
money = json.loads(makeRequest("URL", authToken, True).text)
geld = str(money["money"])
person = money["ownerCharacter"]["name"]
sql = "INSERT INTO bank (menge,name) VALUES (%s,%s)"
val = (geld,person)
try:
cursor.execute(sql, val)
databaseConn.commit()
except:
print("Error Database")
dbClose(databaseConn, cursor)

TA貢獻1946條經驗 獲得超3個贊
這就是問題所在
for amount in money:
您正在迭代字典鍵。看起來你的字典里有 11 個鍵。這意味著您正在執行此操作
geld = str(money["money"])
11次。這就是您將其插入數據庫 11 次的原因。
不要執行 for 循環。只需訪問一次即可插入
geld = str(money["money"])
添加回答
舉報