It's version 0.6 I add users DB
This commit is contained in:
+19
-5
@@ -1,19 +1,33 @@
|
||||
import sqlite3
|
||||
|
||||
DIR = "/Users/mac/myfirstprogramm/storage/message.db"
|
||||
|
||||
if __name__ == "__main__":
|
||||
db = sqlite3.connect(DIR)
|
||||
|
||||
cursor = db.cursor()
|
||||
|
||||
cursor.execute("""CREATE TABLE message (
|
||||
chat_id integer,
|
||||
message_id integer
|
||||
# создаём таблицы (лучше добавить IF NOT EXISTS)
|
||||
cursor.execute("""CREATE TABLE IF NOT EXISTS message (
|
||||
chat_id INTEGER,
|
||||
message_id INTEGER
|
||||
)""")
|
||||
|
||||
cursor.execute("""CREATE TABLE IF NOT EXISTS users (
|
||||
user_id INTEGER,
|
||||
user_group TEXT
|
||||
)""")
|
||||
|
||||
# добавим тестовые данные
|
||||
cursor.execute("INSERT INTO message VALUES (?, ?)", (1, 100))
|
||||
cursor.execute("INSERT INTO users VALUES (?, ?)", (42, 'admin'))
|
||||
db.commit()
|
||||
|
||||
# читаем данные
|
||||
cursor.execute("SELECT * FROM message")
|
||||
print(cursor.fetchone())
|
||||
print("Message:", cursor.fetchall())
|
||||
|
||||
cursor.execute("SELECT * FROM users")
|
||||
print("Users:", cursor.fetchall())
|
||||
|
||||
db.close()
|
||||
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
from .DB import get_db
|
||||
|
||||
def save_user(user_id: int, group: str = "30тс"):
|
||||
db = get_db()
|
||||
cur = db.cursor()
|
||||
cur.execute("INSERT INTO users (user_id, user_group) VALUES (?, ?)", (user_id, group))
|
||||
db.commit()
|
||||
cur.close()
|
||||
db.close()
|
||||
|
||||
def set_group(user_id: int, group: str = "30тс"):
|
||||
db = get_db()
|
||||
cur = db.cursor()
|
||||
cur.execute("UPDATE users SET user_group = ? WHERE user_id = ?", (group, user_id))
|
||||
db.commit()
|
||||
cur.close()
|
||||
db.close()
|
||||
|
||||
def get_group(user_id: int, default: str = "30тс") -> str:
|
||||
db = get_db()
|
||||
cur = db.cursor()
|
||||
cur.execute("SELECT user_group FROM users WHERE user_id = ?", (user_id,))
|
||||
row = cur.fetchone()
|
||||
if row:
|
||||
group = row[0]
|
||||
else:
|
||||
# если пользователя нет — регистрируем с дефолтной группой
|
||||
cur.execute("INSERT INTO users (user_id, user_group) VALUES (?, ?)", (user_id, default))
|
||||
db.commit()
|
||||
group = default
|
||||
cur.close()
|
||||
db.close()
|
||||
return group
|
||||
Reference in New Issue
Block a user