Python avec la connectivité MySQL :connecteur, création de base de données, table, insertion [Exemples]
Pour utiliser la connectivité MySQL avec Python, vous devez avoir une certaine connaissance de SQL
Avant de plonger profondément, comprenons
Qu'est-ce que MySQL ?
MySQL est une base de données Open Source et l'un des meilleurs types de RDBMS (Relational Database Management System). Le co-fondateur de MySQLdb est Michael Widenius, et le nom MySQL dérive également de la fille de Michael.
Dans ce tutoriel, vous apprendrez
- Qu'est-ce que MySQL ?
- Comment installer MySQL
- Installer la bibliothèque de connecteurs MySQL pour Python
- Tester la connexion à la base de données MySQL avec Python
- Créer une base de données dans MySQL à l'aide de Python
- Créer une table dans MySQL avec Python
- Créer une table avec une clé primaire
- Table ALTER dans MySQL avec Python
- Opération d'insertion avec MySQL en Python
Comment installer MySQL Connector Python sur Windows, Linux/Unix
Installez MySQL sous Linux/Unix :
Téléchargez le package RPM pour Linux/Unix depuis le site officiel :https://www.mysql.com/downloads/
Dans le terminal, utilisez la commande suivante
rpm -i <Package_name>
Example rpm -i MySQL-5.0.9.0.i386.rpm
Pour vérifier sous Linux
mysql --version
Installer MySQL sous Windows
Téléchargez l'exe de la base de données MySQL à partir du site officiel et installez comme d'habitude l'installation normale du logiciel sous Windows. Reportez-vous à ce didacticiel pour un guide étape par étape
Comment installer la bibliothèque de connecteurs MySQL pour Python
Voici comment connecter MySQL à Python :
Pour l'installation de Python 2.7 ou version antérieure en utilisant pip comme :
pip install mysql-connector
Pour Python 3 ou une version supérieure, installez en utilisant pip3 comme :
pip3 install mysql-connector
Tester la connexion à la base de données MySQL avec Python
Pour tester ici la connectivité de la base de données MySQL en Python, nous utiliserons le connecteur MySQL préinstallé et transmettrons les informations d'identification à connect() fonctionnent comme l'hôte, le nom d'utilisateur et le mot de passe, comme indiqué dans l'exemple de connecteur Python MySQL ci-dessous.
Syntaxe pour accéder à MySQL avec Python :
import mysql.connector db_connection = mysql.connector.connect( host="hostname", user="username", passwd="password" )
Exemple :
import mysql.connector db_connection = mysql.connector.connect( host="localhost", user="root", passwd="root" ) print(db_connection)
Sortie :
<mysql.connector.connection.MySQLConnection object at 0x000002338A4C6B00>
Ici, la sortie montre la connexion créée avec succès.
Créer une base de données dans MySQL à l'aide de Python
La syntaxe pour créer une nouvelle base de données en SQL est
CREATE DATABASE "database_name"
Maintenant, nous créons une base de données en utilisant la programmation de base de données en Python
import mysql.connector db_connection = mysql.connector.connect( host= "localhost", user= "root", passwd= "root" ) # creating database_cursor to perform SQL operation db_cursor = db_connection.cursor() # executing cursor with execute method and pass SQL query db_cursor.execute("CREATE DATABASE my_first_db") # get list of all databases db_cursor.execute("SHOW DATABASES") #print all databases for db in db_cursor: print(db)
Sortie :
L'image ci-dessus montre le my_first_db la base de données est créée
Créer une table dans MySQL avec Python
Créons une simple table "student" qui comporte deux colonnes, comme indiqué dans l'exemple Python du connecteur MySQL ci-dessous.
Syntaxe SQL :
CREATE TABLE student (id INT, name VARCHAR(255))
Exemple :
import mysql.connector db_connection = mysql.connector.connect( host="localhost", user="root", passwd="root", database="my_first_db" ) db_cursor = db_connection.cursor() #Here creating database table as student' db_cursor.execute("CREATE TABLE student (id INT, name VARCHAR(255))") #Get database table' db_cursor.execute("SHOW TABLES") for table in db_cursor: print(table)
Sortie :
('student',)
Créer une table avec une clé primaire
Créons un Employé tableau avec trois colonnes différentes. Nous ajouterons une clé primaire dans id colonne avec la contrainte AUTO_INCREMENT comme indiqué dans le projet Python ci-dessous avec connectivité à la base de données.
Syntaxe SQL :
CREATE TABLE employee(id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), salary INT(6))
Exemple :
import mysql.connector db_connection = mysql.connector.connect( host="localhost", user="root", passwd="root", database="my_first_db" ) db_cursor = db_connection.cursor() #Here creating database table as employee with primary key db_cursor.execute("CREATE TABLE employee(id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), salary INT(6))") #Get database table db_cursor.execute("SHOW TABLES") for table in db_cursor: print(table)
Sortie :
('employee',) ('student',)
Table ALTER dans MySQL avec Python
La commande Alter est utilisée pour modifier la structure de la table dans SQL. Ici, nous allons modifier Student table et ajoutez une clé primaire à l'id comme indiqué dans le projet de connecteur Python MySQL ci-dessous.
Syntaxe SQL :
ALTER TABLE student MODIFY id INT PRIMARY KEY
Exemple :
import mysql.connector db_connection = mysql.connector.connect( host="localhost", user="root", passwd="root", database="my_first_db" ) db_cursor = db_connection.cursor() #Here we modify existing column id db_cursor.execute("ALTER TABLE student MODIFY id INT PRIMARY KEY")
Sortie :
Ci-dessous, vous pouvez voir l'id colonne est modifiée.
Insérer une opération avec MySQL en Python :
Effectuons l'opération d'insertion dans la table de base de données MySQL que nous avons déjà créée. Nous allons insérer les données de la table STUDENT et de la table EMPLOYEE.
Syntaxe SQL :
INSERT INTO student (id, name) VALUES (01, "John") INSERT INTO employee (id, name, salary) VALUES(01, "John", 10000)
Exemple :
import mysql.connector db_connection = mysql.connector.connect( host="localhost", user="root", passwd="root", database="my_first_db" ) db_cursor = db_connection.cursor() student_sql_query = "INSERT INTO student(id,name) VALUES(01, 'John')" employee_sql_query = " INSERT INTO employee (id, name, salary) VALUES (01, 'John', 10000)" #Execute cursor and pass query as well as student data db_cursor.execute(student_sql_query) #Execute cursor and pass query of employee and data of employee db_cursor.execute(employee_sql_query) db_connection.commit() print(db_cursor.rowcount, "Record Inserted")
Sortie :
2 Record Inserted
Python
- Python String strip() Fonction avec EXAMPLE
- Python String count() avec des EXEMPLES
- Python String format() Expliquer avec des EXEMPLES
- Méthode Python String find() avec exemples
- Fonctions Python Lambda avec EXEMPLES
- Fonction Python round() avec EXEMPLES
- Fonction Python map() avec EXEMPLES
- Python Timeit() avec des exemples
- Compteur Python dans les collections avec exemple