トランザクションのネスト
SQLAlchemyはトランザクションをネストできます。
session.add(user1)
session.add(user2)
session.begin_nested() # セーブポイントを作る
session.add(user3)
session.rollback() # user3をロールバックする。user1, user2は維持される
session.commit() # user1, user2をコミットする
トランザクションに復旧ポイントを設けて、段階的にロールバックができる機能です。
メソッド
session.query(...).get(n)
コード中にある session.quesry(...) の .get() メソッドはプライマリーキーを指定してオブジェクトを取得するメソッドです。
user1 = session.query(User).get(1) の場合、 id が 1 の User を取得するという意味になります。
SELECT文は以下のURL
INSERT、UPDATE、DELETEは以下のURL