Insérer plusieurs enregistrements en une fois
C’est le moment de vous entraîner à insérer plusieurs enregistrements d’un coup !
Comme Jason vous l’a montré dans la vidéo, lorsque vous insérez plusieurs enregistrements à la fois, vous n’utilisez pas la méthode .values(). À la place, commencez par construire une liste de dictionnaires représentant les données à insérer, avec des clés correspondant aux noms des colonnes.
Dans la méthode .execute(), vous pouvez associer cette liste de dictionnaires à une instruction insert, ce qui insérera tous les enregistrements
présents dans votre liste de dictionnaires.
Cet exercice fait partie du cours
Introduction aux bases de données en Python
Instructions
- Construisez une liste de dictionnaires appelée
values_listcontenant deux dictionnaires. Dans le premier dictionnaire, définisseznameà'Anna',countà1,amountà1000.00, etvalidàTrue. Dans le deuxième dictionnaire de la liste, définisseznameà'Taylor',countà1,amountà750.00, etvalidàFalse. - Créez une instruction
insertpour la tabledataafin d’effectuer une insertion multiple, et enregistrez-la dansstmt. - Exécutez
stmtavecvalues_listviaconnectionet stockez le tout dansresults. Assurez-vous quevalues_listest le deuxième argument de.execute(). - Affichez la valeur
rowcountderesults.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Build a list of dictionaries: values_list
values_list = [
{'name': ____, 'count': ____, 'amount': ____, 'valid': ____},
____
]
# Build an insert statement for the data table: stmt
stmt = ____
# Execute stmt with the values_list: results
results = connection.execute(____, ____)
# Print rowcount
print(results.rowcount)