2

SQL ORACLE で新しいテーブルを作成するコードを入力した後、SQL セッションからログアウトした場合、変更は保存されますか?

4

4 に答える 4

7

はい、テーブル定義は保存されます。OracleDDLには暗黙のトランザクション*があります。PostrgreSQLなどの他のデータベースにはトランザクションDDLがありますが、Oracleでは自動であるため注意してください。

* Oracle Transaction Management現在のトランザクションにDMLステートメントが含まれている場合、Oracleは最初にトランザクションをコミットし、次にDDLステートメントを実行して新しい単一ステートメントトランザクションとしてコミットします。

于 2009-12-21T19:21:08.310 に答える
4

正解は、Oracle DDL が暗黙的なトランザクションを使用することです。トランザクションを戻す機会はなく、すぐにコミットされます。

于 2009-12-21T20:16:26.233 に答える
1

要するに「はい」です。DDL ステートメントは、実行直後にコミットされます。スクリプトにこれらのテーブルにデータを入力するための INSERT ステートメントも含まれている場合、それらは独自のコミットなしでは保存されません。

于 2009-12-21T21:07:40.197 に答える
0

うーん、何?はい、データおよびテーブル構造へのすべての変更はすぐに保存されます(トランザクションの一部が永続的に保存されるまでトランザクションの終了まで待機する場合を除く)セッションに依存するのは、セッション変数とセッション設定です。

于 2009-12-21T19:22:09.167 に答える