Проблема при проверке наличия записи в таблице sqlite3. В чём ошибка?
Таблица clans создана, но при создании самой .db, в функциях on_member_join() и on_ready() не прописано её заполнение.
if cursor.execute(f"SELECT owner_id FROM clans WHERE owner_id = {ctx.author.id}").fetchone() is None and cursor.execute(f"SELECT clan_name FROM clans WHERE clan_name = {rearray}").fetchone() is None:
Ошибка:
sqlite3.OperationalError: near "1": syntax error
Kit Scribe, в условиях надо обязательно брать текстовые строки в кавычки. Числовые значения можно в кавычки не брать, а вот с текстом может быть неоднозначность, сравните вот такую строку с кавычками:
SELECT * FROM porn WHERE tags = 'milf; trans;';
и вот такую: SELECT * FROM porn WHERE tags = milf; trans;;
Во втором случае запрос развернётся на сервере в три строки:
SELECT * FROM porn WHERE tags = milf;
trans;
;
и мало того, что вернёт некорректную выборку, так ещё и вылетит с ошибкой как у ТС.
Коротко: в тексте могут встречаться служебные символы и слова SQL. Если не взять текст в кавычки, они могут быть интерпретированы обработчиком.