Какую базу данных нужно использовать для телеграмм бота?
Я создаю телеграмм-бота на python telebot с помощью базы данных Sqlite, направленный на покупку определённых товаров и я в этом новичок.
В самом боте уже есть корзина, которая отлично работает. Но есть очень важный нюанс.
Когда в первый раз запускаешь программу, то корзина работает без ошибок, то есть при добавления товара в корзину, этот же товар добавляется в базу данных, с удалением ситуация тоже правильная.
А вот на второй раз возникает проблема. Когда данные о пользователях сохраняются в БД, то при добавление товаров в корзину и удаление товаров из корзины, программа как бы делает корзину одного пользователя доступный для другого, и возникает такая ситуация: если у первого пользователя в корзине есть Товар 1 и Товар 2, и если у второго пользователя в корзине Товар 3, то первый пользователь получит возможность удалить Товар 3.
И я бы хотел узнать, может быть это как-то связано с базой данной, которую я использую?
С базой данных, как конкретным программным обеспечением, это не связано. Использовать можно любую реляционную базу. Проблема с кодом и, возможно, с тем как именно вы спроектировали вашу базу.
Скорее всего, но я просто не понимаю, где она, а присылать сюда, чтобы кто-то нашёл за меня ошибку и исправил её особо не хочется, тем более там 232 строки кода.
Может быть, Вы знаете какие-нибудь документации на этот счёт?
Moskaa, мог бы посоветовать создать интернет-магазин по учебным материалам. Думаю, что в процессе вы найдете решение вашей проблемы.
Еще можете связаться с авторами тех или иных учебных материалов. Думаю, есть вероятность, что из вежливости, они не откажутся провести вам код-ревью. По-крайней мере один раз.
Использовать можно любую БД. То, что у вас проблема с корзиной товаров разных пользователей - это ошибка в логике вашего кода. Берёте бумажку, ручку и рисуете нужный алгоритм работы, прорабатываете его, делаете декомпозицию до самых простых элементов и исправляете в вашем приложении.