# requête de type “INSERT”, “UPDATE”, “DELETE” avec un script Python

installation


Installation du paquet mysql

pip install PyMySQL

(sur les machines perso., il faut que pip soit installé sudo apt install python-pip)

code tester le code ci-dessous

#pip install PyMySQL    #python -m pip install PyMySQL
import pymysql

ma_connexion_mysql = pymysql.connect(
  host="serveurmysql",
  user="votreLogin",
  passwd="votreMotDePasse",
  database="BDD_votreLogin"
)
mycursor = ma_connexion_mysql.cursor()

adresse="IUT de Belfort, rue de Python";
id_etudiant=9;

ma_commande_SQL ="UPDATE Etudiant SET adresse ='{v_adresse}' WHERE idEtudiant >= {v_id_etudiant};".format(v_adresse=adresse, v_id_etudiant=id_etudiant)
print ma_commande_SQL

mycursor.execute(ma_commande_SQL)

ma_connexion_mysql.commit()

print(mycursor.rowcount, " record(s) affected")

Pour concaténer une chaîne de caratères, il existe plusieurs solutions en python :

hello = "hello"
world = "world"

print hello + " " + world
print "%s %s" % (hello, world)
print "{} {}".format(hello, world)
print ' '.join([hello, world])

exemple :

ma_commande_SQL ="UPDATE Etudiant SET adresse ='" + adresse "' WHERE idEtudiant >= " + id_etudiant + ";";

réaliser les mêmes exercices en Python que en php




ANNEXES

autres exemples :

import pymysql.cursors  
 # Connexion  base de donnees
connection = pymysql.connect(host='serveurmysql',
                             user='votreLogin',
                             password='votreMotDePasse',                             
                             db='S1_bdd',
                             charset='utf8mb4',
                             cursorclass=pymysql.cursors.DictCursor)
 
print ("connect successful!!")
 
try:
  
 
    with connection.cursor() as cursor:
       
        # SQL 
        sql = "SELECT Dept_No, Dept_Name FROM Department "
        adresse="IUT de Belfort"
        id_etudiant=9
        sql = "UPDATE Etudiant SET adresse ='${adresse}' WHERE idEtudiant >= ${id_etudiant};"
         
        # Executez la requete (Execute Query).
        cursor.execute(sql)
         
        print ("cursor.description: ", cursor.description)
 
#        print()
 
#        for row in cursor:
#            print(row)
             
finally:
    # Closez la connexion (Close connection).      
    connection.close()

https://python-django.dev/page-database-data-base-donnees-query-sql-mysql-postgre-sqlite


sudo apt install python-pip

pip install PyMySQL

Essai avec https://www.w3schools.com/python/python_mysql_update.asp mais ça ne fonctionne pas

python -m pip install mysql-connector 

https://www.pythonforbeginners.com/concatenation/string-concatenation-and-formatting-in-python