Wstawianie wielu rekordów jednocześnie
Czas poćwiczyć wstawianie wielu rekordów jednocześnie!
Jak pokazał ci Jason w filmie, podczas wstawiania wielu rekordów na raz nie używa się metody .values(). Zamiast tego najpierw utwórz listę słowników reprezentującą dane, które chcesz wstawić – klucze słowników powinny odpowiadać nazwom kolumn.
W metodzie .execute() możesz połączyć tę listę słowników z instrukcją insert, co spowoduje wstawienie wszystkich rekordów
z twojej listy słowników.
To ćwiczenie jest częścią kursu
Wprowadzenie do baz danych w Pythonie
Instrukcje do ćwiczenia
- Utwórz listę słowników o nazwie
values_listzawierającą dwa słowniki. W pierwszym słowniku ustawnamena'Anna',countna1,amountna1000.00ivalidnaTrue. W drugim słowniku listy ustawnamena'Taylor',countna1,amountna750.00ivalidnaFalse. - Utwórz instrukcję
insertdla tabelidatado wstawienia wielu rekordów i zapisz ją jakostmt. - Wykonaj
stmtzvalues_listprzezconnectioni zapisz wyniki w zmiennejresults. Upewnij się, żevalues_listjest drugim argumentem metody.execute(). - Wyświetl wartość
rowcountze zmiennejresults.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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)