Python MySQL Create Table
To create a table in MySQL, use the «CREATE TABLE» statement.
Make sure you define the name of the database when you create the connection
Example
Create a table named «customers»:
mydb = mysql.connector.connect(
host=»localhost»,
user=»yourusername«,
password=»yourpassword«,
database=»mydatabase»
)
mycursor.execute(«CREATE TABLE customers (name VARCHAR(255), address VARCHAR(255))»)
If the above code was executed with no errors, you have now successfully created a table.
Check if Table Exists
You can check if a table exist by listing all tables in your database with the «SHOW TABLES» statement:
Example
Return a list of your system’s databases:
mydb = mysql.connector.connect(
host=»localhost»,
user=»yourusername«,
password=»yourpassword«,
database=»mydatabase»
)
Primary Key
When creating a table, you should also create a column with a unique key for each record.
This can be done by defining a PRIMARY KEY.
We use the statement «INT AUTO_INCREMENT PRIMARY KEY» which will insert a unique number for each record. Starting at 1, and increased by one for each record.
Example
Create primary key when creating the table:
mydb = mysql.connector.connect(
host=»localhost»,
user=»yourusername«,
password=»yourpassword«,
database=»mydatabase»
)
mycursor.execute(«CREATE TABLE customers (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), address VARCHAR(255))»)
If the table already exists, use the ALTER TABLE keyword:
Example
Create primary key on an existing table:
mydb = mysql.connector.connect(
host=»localhost»,
user=»yourusername«,
password=»yourpassword«,
database=»mydatabase»
)
mycursor.execute(«ALTER TABLE customers ADD COLUMN id INT AUTO_INCREMENT PRIMARY KEY»)