Я перепробовал все и получаю эту ошибку:
pymysql.err.ProgrammingError: (1064, "You have an error in your SQL syntax;
check the manual that corresponds to your MariaDB server version for the right syntax to use near
'INSERT INTO tabSingles (doctype, field, value) VALUES ('Bank Reconciliation', 'a' at line 2")
Расширенный запрос (после расширения формата python):
SELECT value INTO @var FROM tabSingles WHERE doctype = 'Bank Reconciliation' AND field = 'bank_account';
INSERT INTO tabSingles (doctype, field, value) VALUES ('Bank Reconciliation', 'account', @var);
DELETE FROM tabSingles WHERE doctype = 'Bank Reconciliation' AND field = 'bank_account';
Кто-нибудь может увидеть проблему? Есть ли проблема с многострочными запросами? Я пробовал отдельные строки в командной строке mariadb, и они, кажется, работают как положено. Я также попробовал и frappe.db. sql, и multi sql (хотя это означало многострочное sql, но это не так). Если я закомментирую строку 2, она также выдаст ошибку в строке 3. Извините, что беспокою, но я смотрел на это часами и не могу понять!
РЕДАКТИРОВАТЬ: Очевидный ответ таков, но я ' Я все еще хотел бы знать, почему ему не нравится оригинальный запрос:
UPDATE tabSingles SET field='{new_name}' WHERE doctype='{doctype}' AND field='{old_name}';