Créer une table MySQL avec Python
Pour créer une table dans une base de données MySQL, utilisez l’instruction CREATE TABLE.
Assurez-vous de définir le nom de la base de données lorsque vous créez la connexion. L’exemple suivant crée une table nommée « person » dans la base de données « my_db »:
# -*- coding: utf-8 -*- import mysql.connector #connexion au base de données db = mysql.connector.connect( host = "localhost", user = "root", password = "", database = "my_db" ) #créer un curseur de base de données pour effectuer des opérations SQL cur = db.cursor() #exécuter le curseur avec la méthode execute() et transmis la requête SQL cur.execute("CREATE TABLE person (name VARCHAR(255), age INT)")
Si le code ci-dessus a été exécuté sans erreur, vous avez créé une table avec succès.
Vérifiez si la table existe
Vous pouvez vérifier si une table existe en listant toutes les tables de votre base de données avec l’instruction SHOW TABLES. L’exemple suivant renvoie la liste des tables de votre bases de données:
# -*- coding: utf-8 -*- import mysql.connector #connexion au base de données db = mysql.connector.connect( host = "localhost", user = "root", password = "", database = "my_db" ) #créer un curseur de base de données pour effectuer des opérations SQL cur = db.cursor() #exécuter le curseur avec la méthode execute() et transmis la requête SQL cur.execute("SHOW TABLES") #parcourir le curseur for table in cur: print(table)
Sortie:
(u'person',)
Clé primaire
Lors de la création d’une table, vous devez également créer une colonne avec une clé unique pour chaque enregistrement.
Cela peut être fait en définissant une clé primaire.
Nous utilisons l’instruction INT AUTO_INCREMENT PRIMARY KEY qui insérera un numéro unique pour chaque enregistrement. À partir de 1 et s’incrémente de 1 pour chaque enregistrement.
L’exemple suivant crée la clé primaire lors de la création de la table:
# -*- coding: utf-8 -*- import mysql.connector #connexion au base de données db = mysql.connector.connect( host = "localhost", user = "root", password = "", database = "my_db" ) #créer un curseur de base de données pour effectuer des opérations SQL cur = db.cursor() #exécuter le curseur avec la méthode execute() et transmis la requête SQL cur.execute("CREATE TABLE person (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), age INT)")