Я использую mysql.connector в скрипте python. Когда я пытаюсь выполнить скрипт, который имеет псевдонимы для таблиц, он не может быть выполнен и дает ошибку "неизвестный столбец" column_name 'в' field_list '".
Обе таблицы имеют поля с одинаковыми именами, поэтому я не могу просто не использовать псевдонимы.
Код:
query = ("SELECT ti.itemno, ti.active FROM text_item AS ti"
"INNER JOIN text_itemmember AS tim ON tim.itemno = ti.itemno;")
cursor.execute(query)
Та же ошибка, которую я получаю при замене псевдонима "ti" на имя таблицы ("text_item"). Я не могу найти информацию о соединителе, не работающем с псевдонимами.
Как это исправить?
После псевдонима таблицы вам понадобится пробел, например:
query = ("SELECT ti.itemno, ti.active FROM text_item AS ti "
"INNER JOIN text_itemmember AS tim ON tim.itemno = ti.itemno")
cursor.execute(query)
Python объединяет смежные строковые литералы в один, поэтому у вас на самом деле есть 'tiINNER'
в качестве псевдонима.