import sqlite3
import sys
import pathlib
script_dir = pathlib.Path(sys.argv[0]).parent
db_file = script_dir / 'database.db'
conn = sqlite3.connect(db_file)
class Database:
def __init__(self, db_file):
self.connection = sqlite3.connect('db_file', check_same_thread=False)
self.cursor = self.connection.cursor()
db = self.connection
c = db.cursor()
# c.execute("""CREATE TABLE users (
# id INTEGER PRIMARY KEY AUTOINCREMENT,
# user_id INTEGER NOT NULL,
# money INTEGER NOT NULL
# DEFAULT (0)
# );""")
def user_exists(self, user_id):
with self.connection:
result = self.cursor.execute("Select * FROM 'users' WHERE 'user_id' = ?", (user_id,)).fetchall()
return bool(len(result))
def add_user(self, user_id):
with self.connection:
self.cursor.execute("INSERT INTO 'users' ('user_id') VALUES (?)", (user_id,))
def user_money(self, user_id):
with self.connection:
result = self.cursor.execute("SELECT 'money' FROM 'users' WHERE 'user_id' = ?", (user_id,)).fetchmany(1)
return int(result[0][0])
def set_money(self, user_id, money):
with self.connection:
return self.cursor.execute("UPDATE 'users' SET 'money' = ? WHERE 'user_id' = ?", (money, user_id))
db = sqlite3.connect(db_file)
db.commit()
db.close()
при нажатие на кнопку для вывода кол-ва денег выдает ошибку: in user_money
return int(result[0][0])
IndexError: list index out of range
Данные в бд не появляются, не могу понять в чем проблема.
P.S. создание таблицы закомментировано, потому что она уже создана