Здравствуйте, у меня есть вопрос который достаточно сложно правильно изложить.Я не понимаю как мне эффективно работать с
Pymysql в питоне.Синтаксис питона я хорошо знаю,
mysql - хуже, но работать могу.Но за работой у меня возникает куча проблем по типу загрузки данных в бд.У меня был проект, с которого я начинал изучение питона, это был бот на вк.Там я использовал
Json как бд, то есть рядом с исполняемым файлом лежал Json с данными пользователей, я открывал его в коде, читал/писал и сохранял.Естественно это не совсем правильно, тк можно делать запросы к бд и получать нужную мне информацию, но я столкнулся с некоторыми проблемами.Самая непонятная из них это сохранение разных типов данных:
def setdigit(self, id, data):
with self.connect:
cur = self.connect.cursor()
cur.execute(f"UPDATE DB.USERS SET {data.keys()[0]}={data[data.leys()[0]]} WHERE id={id}")
def setstring(self, id, data):
with self.connect:
cur = self.connect.cursor()
cur.execute(f"UPDATE DB.USERS SET {data.keys()[0]}='{data[data.leys()[0]]}' WHERE id={id}")
Я передаю функции нужный ID и {"Ключ":"значение"}
И каждый раз мне нужно вызывать функцию записи числа или строки, это не особо удобно, еще я не особо понимаю, как правильно загружать данные в базу именно с питона.Если сделать функцию принимающую все аргументы отдельно:
def setdigit(self, id, key, value):
with self.connect:
cur = self.connect.cursor()
cur.execute(f"UPDATE DB.USERS SET {key}={value} WHERE id={id}")
То естественно вызов такой функции становится более грамостским, хотя возможно так правильнее.Вобщем можете ли вы объяснить, как правилнее работать, а в идеале приложить кусок кода с продакшена, где используется pymysql что бы я понял как связать питон и бд.Спасибо!