Python MySQL - Créer une base de données

Vous pouvez créer une base de données dans MYSQL à l'aide de la requête CREATE DATABASE.

Syntaxe

Voici la syntaxe de la requête CREATE DATABASE -

CREATE DATABASE name_of_the_database

Exemple

L'instruction suivante crée une base de données avec le nom mydb dans MySQL -

mysql> CREATE DATABASE mydb;
Query OK, 1 row affected (0.04 sec)

Si vous observez la liste des bases de données à l'aide de l'instruction SHOW DATABASES, vous pouvez observer la base de données nouvellement créée comme indiqué ci-dessous -

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| logging            |
| mydatabase         |
| mydb               |
| performance_schema |
| students           |
| sys                |
+--------------------+
26 rows in set (0.15 sec)

Créer une base de données dans MySQL à l'aide de Python

Après avoir établi la connexion avec MySQL, pour manipuler les données, vous devez vous connecter à une base de données. Vous pouvez vous connecter à une base de données existante ou créer la vôtre.

Vous auriez besoin de privilèges spéciaux pour créer ou supprimer une base de données MySQL. Donc, si vous avez accès à l'utilisateur root, vous pouvez créer n'importe quelle base de données.

Exemple

L'exemple suivant établit une connexion avec MYSQL et y crée une base de données.

import mysql.connector

#establishing the connection
conn = mysql.connector.connect(user='root', password='password', host='127.0.0.1')

#Creating a cursor object using the cursor() method
cursor = conn.cursor()

#Doping database MYDATABASE if already exists.
cursor.execute("DROP database IF EXISTS MyDatabase")

#Preparing query to create a database
sql = "CREATE database MYDATABASE";

#Creating a database
cursor.execute(sql)

#Retrieving the list of databases
print("List of databases: ")
cursor.execute("SHOW DATABASES")
print(cursor.fetchall())

#Closing the connection
conn.close()

Production

List of databases:
[
   ('information_schema',), 
   ('dbbug61332',), 
   ('details',), 
   ('exampledatabase',), 
   ('mydatabase',), 
   ('mydb',), 
   ('mysql',), 
   ('performance_schema',)
]