Я пытаюсь использовать переменную для ключа внутри оператора обновления, но кажется, что использование переменных недопустимо.
Существует таблица "disamb":
+----+-----------+--------------------+-----------+--------------------+
| id | entity_a | id_of_entity_a | entity_b | id_of_entity |
+----+-----------+--------------------+-----------+--------------------+
| 0 | table | | bar | - |
+----+-----------+--------------------+-----------+--------------------+
И таблица "entity":
+--------+----+-----------------------------------------------------------------+
| entity | id | paraphrase |
+--------+----+-----------------------------------------------------------------+
| table | 1 | An item of furniture with a flat top and one or more legs |
| table | 2 | A data arrangement with rows and columns |
| bar | 3 | A retail business establishment that serves alcoholic beverages |
| bar | 4 | a long item |
+--------+----+-----------------------------------------------------------------+
Моя программа перебирает столбцы "entity_a" и "entity_b" в таблице "disamb" и ищет в таблице "entity" соответствующие слова, спросите менякоторый выбрать, а затем (должен) записать его в соответствующий столбец "id_of_entity_a" соответственно."Id_of_entity_b".
Таким образом, в одной точке цикла переменные имеют, например, следующие значения:
column_name = "id_of_entity_a"
id_of_entity = "1"
row = "0"
, и я пытаюсь выполнить этот код:
update_stmt = tbl.update().\
values(column_name=id_of_entity).\
where(tbl.columns.id == (row))
conn_mysql.execute(update_stmt)
Выдаетошибка: "sqlalchemy.exc.CompileError: Неиспользованные имена столбцов: column_name"
Как мне решить эту проблему?Thx!