remove db_connect funtion and fix all db connections

This commit is contained in:
2021-05-30 23:26:18 +02:00
parent 5df707da83
commit 3db70a8486

View File

@@ -58,6 +58,11 @@ class TimeTrack:
logging.info('config file successfully created')
def db_setup(self):
if os.path.isfile(self.DATABASE):
logging.info('DB was found')
else:
logging.info('DB not found, create new')
sql = []
sql.append("""
CREATE TABLE IF NOT EXISTS time_entries (
@@ -102,132 +107,89 @@ class TimeTrack:
name TEXT NOT NULL
)
""")
self.db_connect(sql)
connect = sqlite3.connect(self.DATABASE)
cursor = connect.cursor()
for SQL in sql:
logging.debug('Run SQL')
try:
cursor.execute(SQL)
except:
logging.error('Fail to execute SQL command')
logging.debug(SQL)
else:
logging.info('Success execute SQL command')
connect.commit
connect.close()
##> Kürzer möglich ?
def db_connect(self, SQL, DATA=''):
if os.path.isfile(self.DATABASE):
logging.info('DB was found')
pass
def create_user(self, USER=''):
if USER == '':
username = input('Enter your Name: ')
else:
logging.info('DB not found, create new')
username = USER
while self.get_users(NAME=username):
print('Name ist schon vergeben')
username = input('Wähle einen anderen Namen: ')
connect = sqlite3.connect(self.DATABASE)
cursor = connect.cursor()
if isinstance(SQL, list):
logging.info('Multible SQL commands found')
for sql in SQL:
logging.debug('Run SQL')
try:
cursor.execute(sql)
except:
logging.error('Fail to execute SQL command')
logging.debug(sql)
else:
logging.info('Success execute SQL command')
connect.commit
sql = "INSERT INTO users ( name ) values ( ? )"
try:
cursor.execute(sql, [username])
except:
logging.error('Fail to execute SQL command')
logging.debug(sql)
else:
logging.info('Single SQL command found')
sql = SQL
if DATA == '':
logging.debug('Run SQL')
try:
cursor.execute(sql)
except:
logging.error('Fail to execute SQL command')
logging.debug(sql)
else:
logging.info('Success execute SQL command')
connect.commit()
else:
logging.info('Data found')
data = DATA
if isinstance(DATA, list):
logging.debug('Data is list')
if isinstance(DATA[0], list):
try:
cursor.executemany(sql, data)
except:
logging.error('Fail to execute SQL command')
logging.debug(sql)
else:
logging.info('Success execute SQL command')
logging.debug(sql)
connect.commit()
else:
try:
cursor.execute(sql, data)
except:
logging.error('Fail to execute SQL command')
logging.debug(sql)
else:
logging.info('Success execute SQL command')
logging.debug(sql)
connect.commit()
else:
logging.debug('Convert Data to list')
logging.debug('Run SQL')
try:
cursor.execute(sql, [data])
except:
logging.error('Fail to execute SQL command')
logging.debug(sql)
logging.debug(data)
else:
logging.info('Success execute SQL command')
logging.debug(sql)
connect.commit()
output = []
for data in cursor:
output.append(data)
connect.close()
return output
def create_user(self, USER=''):
if USER == '':
data = input('Enter your Name: ')
else:
data = USER
while self.get_users(NAME=data):
print('Name ist schon vergeben')
data = input('Wähle einen anderen Namen: ')
sql = """
INSERT INTO users (
name
) values (
?
)
"""
self.db_connect(sql, data)
logging.info('Success execute SQL command')
connect.commit()
connect.close()
##> verbugt noch nicht funktional
def get_users(self, UID=0, NAME=''):
if not UID == 0:
logging.info('UID Used')
data = UID
sql = """
SELECT name FROM users WHERE id = ?
"""
sql = "SELECT name FROM users WHERE id = ?"
elif not NAME == '':
logging.info('NAME used')
data = NAME
sql = """
SELECT name FROM users WHERE name = ?
"""
sql = "SELECT name FROM users WHERE name = ?"
else:
logging.info('nothing used')
sql = """
SELECT * FROM users WHERE
"""
data = ''
sql = "SELECT * FROM users"
return self.db_connect(sql, data)
connect = sqlite3.connect(self.DATABASE)
cursor = connect.cursor()
try:
if data:
cursor.execute(sql, [data])
else:
cursor.execute(sql)
except:
logging.error('Fail to execute SQL command')
logging.debug(sql)
else:
logging.info('Success execute SQL command')
connect.commit()
row = cursor.fetchall()
output = []
for data in row:
print(data)
output.append(data)
connect.close()
return output
def set_user(self):
pass