-1

一時テーブル (10 フィールド) があり、ストアド プロシージャ (単一の列に対して単一の更新ステートメント) を使用して更新される場合。

一時テーブルを更新するにはコミットが必要ですか? コミットなしで問題なく動作しますか?

4

2 に答える 2

3

それが実際の一時テーブルである場合、その中のデータは、たとえあなたがコミットしたとしても、あなたのセッションにのみ表示され、他の誰にも表示されません. on commit句がコミットされている場合preserve rowsでも、コミットしても違いはありませんが、そうであれば、セッションであっても、delete rows後でデータを失うことになりcommitます。

それが実際の一時テーブルでない場合、その中のデータは、コミットするまでセッションにのみ表示されます。呼び出されたプロシージャは(通常)同じセッションにあるため、データの変更が表示され、通常は呼び出し元がコミットするかロールバックするかを決定します.プロシージャ内でそれを行うのは一般的には良い考えではありません.

于 2012-07-27T08:41:22.847 に答える
-1

このように言います-コミットしない場合-セッションのみが任意の時点で変更を確認します。

于 2012-07-27T08:13:19.100 に答える