Insérer plusieurs enregistrements en une seule fois
Il est temps de vous exercer à insérer plusieurs enregistrements d'un coup!
Comme Jason vous l'a montré dans la vidéo, lorsque vous insérez plusieurs enregistrements en une seule fois, vous n'utilisez pas la méthode .values(). À la place, commencez par construire une liste de dictionnaires qui représente les données à insérer, où les clés correspondent 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
de votre liste de dictionnaires.
Cette activité fait partie du cours
Introduction aux bases de données en Python
Instructions de l’exercice
- Créez une liste de dictionnaires appelée
values_listcontenant deux dictionnaires. Dans le premier dictionnaire, définisseznameà'Anna',countà1,amountà1000.00etvalidàTrue. Dans le deuxième dictionnaire de la liste, définisseznameà'Taylor',countà1,amountà750.00etvalidà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 passé à.execute(). - Affichez la valeur de
rowcountderesults.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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)