Таблица Sqlite разбивает строку на символы
Я делаю Телеграмм бота на Telebot и когда я пытаюсь добавить строку в бд, её добавляет, но разделённую на символы.
Буду очень благодарен если поможете решить эту проблему
Я делаю Телеграмм бота на Telebot и когда я пытаюсь добавить строку в бд, её добавляет, но разделённую на символы.
Буду очень благодарен если поможете решить эту проблему
А вы знаете как работает executemany?
В вашем случае executemany на каждый символ строки создавал запрос INSERT INTO
, который передавался в поле disc
Если вам нужно вставить одну строку в базу, то используйте просто execute, но оберните textdb
в кортеж или список:
cursor.execute("<ваш sql запрос>", (textdb,))
PS.
У execute(sql, parameters=())
второй параметр принимает кортеж, но ему на самом деле сойдет любой объект с поддержкой итерацией (строки тоже подходят из-за чего, если передавать как есть, то код поведет себя не так как ожидалось). Поэтому, нужно было обернуть textdb
в кортеж на 1 элемент (textdb,)
- тут важна запятая, т.к. в случаи (textdb)
это не будет кортежом.
Если несколько параметров передавать, то это выглядит адекватнее, типа: cursor.execute("<ваш sql запрос (?, ?, ?)", (textdb, result, abc))