テーブルからすべてのレコードを削除する
テーブルをいったん空にしてからデータを再読み込みしたい場合があります。
このときは、テーブルだけを引数に取る delete ステートメントで実行できます。たとえば動画では、Jason は次のように実行して extra_employees テーブルを削除しました:
delete_stmt = delete(extra_employees)
result_proxy = connection.execute(delete_stmt)
ただし、削除は元に戻せないので注意してください。
この演習はコースの一部です
Pythonで学ぶデータベース入門
演習の手順
- sqlalchemy から
deleteとselectをインポートします。 censusテーブルからすべてのデータを削除するdeleteステートメントを作成し、delete_stmtとして保存します。connectionを使ってdelete_stmtを実行し、resultsに保存します。censusテーブルの残りの行をselectで取得して結果を表示し、テーブルが空になったことを確認してから Submit Answer してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Import delete, select
from sqlalchemy import ____, ____
# Build a statement to empty the census table: stmt
delete_stmt = ____
# Execute the statement: results
results = ____
# Print affected rowcount
print(results.rowcount)
# Build a statement to select all records from the census table : select_stmt
select_stmt = select([census])
# Print the results of executing the statement to verify there are no rows
print(connection.execute(select_stmt).fetchall())