Home > Net >  MySQL-Python Wont create the table
MySQL-Python Wont create the table

Time:08-05

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?

CodePudding user response:

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

CodePudding user response:

Hello you are using strings

"""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)"""

  • Related