Почему не записываются данные в таблицу бд SQlite3?
При запуске кода не выдаётся никаких ошибок, но функционал в боте не работает, а именно при нажатии на кнопку "Поиск собеседника" данные не записываются в таблицу, соответсвенно код дальше не выполняется. В чём может быть причина?
Это само тело бота
import config
import telebot
from telebot import types
from database import Database
db = Database('db.db')
bot = telebot.TeleBot(config.token)
Лучше не используйте вообще sqlite3 для работы с тг ботами, используйте aiosqlite и другие асинхронные версии для работы с базами данных. Лучший вариант sqlachemy тут вы сможете менять бд почти не меняя кода, а также не придется писать запросы самому.
Добавил коммит, к сожалению не помогло. Вообще ума не приложу что происходит, код в порядке, ничего не ругается
А на счёт sqlite3, я только учусь, поэтому решил выбрать эту бд, на канале где уроки смотрю по питону про неё рассказыывается, решил не изменять учителю и начать с этой бд
Но всё равно спасибо, посмотрю что за sqlachemy, может и на на неё перейду
Dark1448, у тебя скорее всего этот код вообще не работает. Где-то вываливается
раньше по ошибке. И поскольку логи ты не пишешь и не читаешь то и диагностики
никакой у нас нет.
Просто глядя глазами в код - трудно проводить какие-либо доказательства.
Dark1448, так не бывает. Любой API разрабатывается с вариантами обработки ошибок
1) В случае ошибки API метод бросает исключение. Отвественность программиста - поймать
это исключение и обработать. Если программист не обрабатывает исключение - то оно эскалируется
наверх. Тоесть API верхних уровней ловят ошибки. Здесь - ловушкой может быть фреймворк или ОС.
2) В случае ошибки API метод возвращает код ошибки. Здесь 100% программист обязан обработать.
Для некоторых ведомств типа NASA, обработка кодов всех ошибок всех функций является
кодексом поведения.
Ты писал код в надежде что все методы всегда возвращают успех. Теперь - перепроверь.