Я пытаюсь работать с базой данных и получаю сообщение об ошибке, сообщающее, что моя база данных заблокирована.
async def tradeStock(company, price, user, tradeType, dbId, userTwo, numShares):
if tradeType == "bids":
tradeTypeOpp = "asks"
else:
tradeTypeOpp = "bids"
conn = sqlite3.connect('db.db')
c = conn.cursor()
c.execute(f"""UPDATE "{userTwo}" SET share_amount = share_amount - ? WHERE share_company=?""", (numShares, company,))
c.execute(f"""SELECT * FROM "{userTwo}" WHERE share_company=?""", (company,))
row = c.fetchone()
if row:
c.execute(f"""UPDATE "{user}" SET share_amount = share_amount + ? WHERE share_company=?""", (numShares, company,))
else:
c.execute(f"""INSERT INTO "{user}" (share_company, share_amount) VALUES (?, ?)""", (company, numShares,))
c.execute(f"""DELETE FROM "{tradeTypeOpp}" WHERE id=?""", (dbId,))
price = int(price)
numShares = int(numShares)
if tradeType == "asks":
c.execute("UPDATE users SET balance = balance - ? WHERE name=?", (str(price * numShares), userTwo,))
c.execute("UPDATE users SET balance = balance + ? WHERE name=?", (str(price * numShares), user,))
if tradeType == "bids":
c.execute("UPDATE users SET balance = balance - ? WHERE name=?", (str(price * numShares), user,))
c.execute("UPDATE users SET balance = balance + ? WHERE name=?", (str(price * numShares), userTwo,))
conn.commit()
conn.close()
После просмотра в Интернете я видел сообщения, в которых говорилось о коммите (), но это ничего не изменило.