いいえ、あなたが何を求めているのか理解できれば。トランザクションは、データベース履歴にチェックポイントを設定するものと考えることができるため、トランザクション内の個々の操作のいずれかが失敗した場合、データベースの状態をチェックポイントに復元できます。これは非常に単純化されていますが、概念的にはトランザクションの仕組みです。
トランザクション内では、個々のクエリが個別に実行されます。
また、「多くの小さなクエリではなく、1つの大きなクエリ」を使用する方が常に優れているとは限りません。それはクエリが何であるかに依存します。一度に1つずつ要求するよりも、1つの大きなクエリで一連の行を要求する方が効率的です。私は実際にこれを行うコード(擬似コード)を見てきました:
SELECT id FROM people WHERE ... ORDER BY lastname;
for each (id) {
SELECT firstname, lastname, phone from people WHERE id = {id};
...
}
それははるかに効率的です
SELECT id, firstname, lastname, phone FROM people WHERE ... ORDER BY lastname;