@Alex_Python_Nub

Почему при записи строки в sqlite3 выдает ошибку, что я пытаюсь записать 93 значение в поля для 1? 93 — видимо это количество символов в строке.?

def write_in_DB(text: str):
connection = sqlite3.connect('bot_database.db')
cursor = connection.cursor()
text = str(''.join(text))
print(text)
cursor.execute("""
CREATE TABLE IF NOT EXISTS messages(
id INTEGER PRIMARY KEY AUTOINCREMENT,
message TEXT NOT NULL
)
""")
cursor.execute("INSERT INTO messages(message) VALUES (?)", ('text'))
connection.commit()
connection.close()

Ошибка:
cursor.execute("INSERT INTO messages(message) VALUES (?)", ('text'))
sqlite3.ProgrammingError: Incorrect number of bindings supplied. The current statement uses 1, and there are 4 supplied.
  • Вопрос задан
  • 82 просмотра
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
- cursor.execute("INSERT INTO messages(message) VALUES (?)", ('text'))
+ cursor.execute("INSERT INTO messages(message) VALUES (?)", ('text',))
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Everything_is_bad
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы