Значит и правда нет такой таблицы. Сделайте её создание в
__init__
и всё
import sqlite3
class Database:
def __init__(self, db_file):
self.connection = sqlite3.connect(db_file)
self.cursor = self.connection.cursor()
with self.connection:
self.cursor.execute('''
CREATE TABLE IF NOT EXISTS Users (
id INTEGER PRIMARY KEY NOT NULL,
user_id INTEGER NOT NULL,
nickname TEXT (60),
time_sub NOT NULL DEFAULT (0),
signup TEXT DEFAULT setnickname
);
''')
def add_user(self, id):
with self.connection:
self.cursor.execute("INSERT INTO `Users` (`id`) VALUES (?)", (id,))
return self.cursor.execute
def user_exists(self, id):
with self.connection:
result = self.cursor.execute("SELECT * FROM `Users` WHERE `id` = ?", (id,)).fetchall()
return bool(len(result))
ps: придется пофиксить
add_user
т.к. он принимает только один параметр - ID, а у вас 3 NOT NULL параметра