12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- import mysql.connector
- from bot import config as conf
- class Database:
- def __init__(self):
- try:
- self.connection = mysql.connector.connect(host=conf.DB_HOST,
- user=conf.DB_USER,
- password=conf.DB_PASS,
- database=conf.DB_NAME)
- self.cursor = self.connection.cursor(dictionary=True)
- except mysql.connector.Error as err:
- print("Something went wrong: {}".format(err))
- def cursor(self):
- return self.cursor
- def commit(self):
- self.connection.commit()
- def close(self, commit=True):
- if commit:
- self.commit()
- self.connection.close()
- def fetchone(self):
- return self.cursor.fetchone()
- def fetchall(self):
- return self.cursor.fetchall()
- def execute(self, sql, params=None):
- return self.cursor.execute(sql, params or ())
- def sql_fetchone(self, sql: str):
- self.execute(sql)
- response = self.fetchone()
- if response is None:
- return False
- else:
- for v in response.values():
- return v
- def sql_fetchall(self, sql: str):
- self.execute(sql)
- result_set = self.fetchall()
- return result_set
- def sql_query_send(self, sql: str):
- self.execute(sql)
- self.commit()
- self.close()
- def sql_parse_users(self, sql: str):
- self.execute(sql)
- result_set = self.fetchall()
- users_list = []
- if len(result_set) == 0:
- return False
- elif len(result_set) > 0:
- for row in result_set:
- users_data = {"ID": row['id'], "ФИО": row['name'], "Номер телефона": row['phone']}
- users_list.append(users_data)
- return users_list
- def sql_parse_user_events(self, sql: str):
- self.execute(sql)
- result_set = self.fetchall()
- events_list = []
- if len(result_set) == 0:
- return False
- elif len(result_set) > 0:
- for row in result_set:
- event_data = f"Описание {row['description']}\n Дата {row['dat']}"
- events_list.append(event_data)
- return events_list
|