Search code examples
pythonmysqlmysql-pythonmysql-connector-python

MySQL-Python Wont create the table


I am trying to create a few tables using Python, the first few worked and this specific one not. This is my code:

sql = "CREATE TABLE citizens(\
    ID INT PRIMARY KEY AUTO_INCREMENT,\
    full_name VARCHAR(100),\
    age INT,\
    Gender ENUM('F', 'M'),\
    cultivation VARCHAR(100),\
    rank INT,\
    isRouge ENUM('Yes', 'No'),\
    sect_id INT)"

mycursor.execute(sql)

and this is the error it gives me:

MySQLInterfaceError: You have an error in your SQL syntax; 
check the manual that corresponds to your MySQL server version for the right syntax to use
 near 'rank INT,    isRouge ENUM('Yes', 'No'),    sect_id INT)' at line 1

what is it thaat I am missing?


Solution

  • "rank" bad field name. This is a reserved word https://dev.mysql.com/doc/refman/8.0/en/keywords.html