Вопрос в шапке.
Я делаю телеграм-бота, который сохраняет написанные ему сообщения от людей. При добавлении сообщения с кавычками, мне выдает ошибку
near "..." syntax error, часть кода:
save.execute(f'INSERT INTO messages (chat, id) VALUES ({message.chat.id}, {message.id})')
updateText = '''UPDATE messages SET {0} = \"{1}\" WHERE chat = ''' + str(message.chat.id) + ' AND id = ' + str(message.id)
if message.text:
save.execute(updateText.format('text', message.text.html))
elif message.caption:
save.execute(updateText.format('text', message.caption.html))
С \"{1}\" так же не работает - раньше там стояли двойные строки, но тогда при двойных в сообщении выдавало ошибку. Я сменил их на одинарные, выдавало ошибку с сообщениями, где есть одинарные. Следуя из этого, у меня есть только два подозрения в голове:
1. Есть какое-то другое обозначение строк, которое не позволит вылезти этой ошибке и о котором я не знаю;
2. Есть вариант добавлять текст с пробелами без кавычек, о котором я так же не знаю
Попытался что-то найти в интернете, но или я плохо искал, или подтверждения моих подозрений просто-напросто не существует. Прошу помощи :(
UPD: попробовал сделать так:
if message.text:
save.execute(updateText.format('text', message.text.html.replace('"', '\"').replace("'", "\'")))
elif message.caption:
save.execute(updateText.format('text', message.caption.html.replace('"', '\"').replace("'", "\'")))
Апострофы теперь пропускаются, но двойные кавычки все так же нет