MySQL Connector不使用表别名

时间:2017-12-14 15:18:02

标签: python mysql mysql-connector mysql-connector-python

我在python脚本中使用mysql.connector。 当我尝试执行具有表别名的脚本时 - 它无法执行并出现错误"未知列' 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")。 我无法找到有关连接器无法使用别名的任何信息。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

表别名后面需要一个空格,例如:

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 combines将字符串文字与一个字符串文字相对应,因此您实际上将'tiINNER'作为别名。