sql >> データベース >  >> RDS >> Oracle

Oracleの一時テーブルとグローバル一時テーブルの違いは何ですか?

    Oracleでは違いはありません。 Oracleデータベースに一時テーブルを作成すると、自動的にグローバルになり、「グローバル」キーワードを含める必要があります。

    「GLOBALTEMPORARYTABLE」という用語の解釈方法を定義するSQL標準では、LOCALスコープまたはGLOBALスコープのいずれかを使用できます。これにより、ユーザー固有のテーブル(LOCAL)または全員(GLOBAL)のいずれかが可能になります。 OracleはGLOBALバージョンのみを実装します。

    Oracle Temporaryテーブルに入力するデータは、セッションに固有のものです。つまり、100人のユーザーがすべて同じテーブルを使用している場合でも、データを表示できるのは自分だけです。テーブルの設定によっては、切断時(または現在のトランザクションのコミット時)にデータがテーブルから削除されます。

    これを、一時テーブルがローカルであるMSSQL-Serverと比較してください。作成した場合、一時テーブルが存在することをあなた以外の誰も知りません。 Oracleでは、一時テーブルを作成すると、すべての人(スキーマにアクセスできるすべての人)がテーブルを表示できるようになります。セッションからログアウトすると、SQL-Serverテーブルが削除され、次のセッションのために再作成する必要があります。 Oracleでは、データがそうでない場合でも、一時テーブルがスキーマの永続的な部分になりました。



    1. インデックスのない一意性制約

    2. EntityFrameworkOracleおよびSQLServer-データベースに依存しないアプリケーションを構築する方法

    3. MySQLのテーブルフィールドにインデックスが存在するかどうかを確認するにはどうすればよいですか?

    4. PHPでmysqlテーブルの同時アクセスを使用するにはどうすればよいですか?