この記事では、一時テーブルを作成し、これらのテーブルをさらに削除する方法を学びます。 一時テーブルは、セッション内に作成されるセッション固有のテーブルです。 セッションが閉じると、テーブルは単独で削除されます。 一時テーブルに内在するセッションだけることとしており、テーブルを作成する一つのセッションは見えませんが他のセッション。 例えば、セッションID501されたインデックスファイルをその後のセッションID502アクセスできないので操作します。, 二つの異なるセッションは、同じ名前の一時テーブルを持つことがで
一時テーブルは、大きなテーブルの小さなサブセットを使用する場合に便利で、ストアドプロシージャ内で複数回使用されています。 このような場合、テーブルにフィルターを複数回適用する代わりに、大きなテーブルのサブセットを一時テーブルに保存し、ストアドプロシージャ内で使用でき,
一時テーブルの重要な事実:
- MySQL一時テーブルは、データベーススキーマと切り離された関係を持っています。 InnoDB_strict_modeパラメーターを有効にした場合、エラーが返されます。, InnoDB_strict_modeパラメーターを無効にした場合、MySQLは警告を発行し、非圧縮行形式でテーブルを作成します
- ストアドプロシージャ内にテンポラリテーブルを作成するには、ユーザーにcreate temporary table権限が必要です。 付与されると、その一時テーブル内のデータを更新、削除、または挿入するには、特別な権限は必要ありません。 この動作には一つの意味があります。 一時テーブルを使用するストアドプロシージャと、そのプロシージャを開発したユーザー1にcreate temporary table権限があるとします。, これで、ユーザー2はそれを実行しようとしましたが、create temporary table権限がありません。 このような場合、MySQLはユーザー1の権限を使用して一時テーブルを作成します。 プロシージャが正常に完了すると、権限は元に戻されます
- テーブルが既に持っている定義に基づいて一時テーブルを作成することはできません。, 別のテーブルの定義に基づいて一時テーブルを作成するには、次の構文を使用する必要があります
1一時テーブルを選択します。., select*from
- 通常のcreate tableステートメントとは異なり、Create temporary tableステートメントは暗黙的なコミットを引き起こしません
- 一時テーブルはMySQL通常のテーブルと同じ名前を持つことができます。 たとえば、employeeという名前のテーブルがデータベースに存在しても、employeeという名前の一時テーブルをデータベースに作成できます。 この場合、MySQLテーブルにアクセスできなくなります。 一時テーブルが削除されると、物理テーブルに再びアクセスできます。,/div>
1234567一時テーブルtblemployeeを作成します(column_1データ型,column_2データ型,column_3データ型,…)
ご覧のとおり、一時テーブルを作成する構文はMySQLテーブルを作成する構文と同じです。, 唯一の違いは、スを指定しなければなりませんの仮設キーワード間の創造とテーブルのキーワード キーワードを追加するのを忘れると、通常のMySQLテーブルが作成されるため、これは非常に重要です。
ここで、一時テーブルの例をいくつか見てみましょう。, 別のテーブルの構造を使用して一時テーブルを作成します。
一時テーブルを作成してデータを挿入します。
MySQLデータベースにtblemployeeという名前の新しい一時テーブルを作成するには、次のクエリを実行します。
次のクエリを実行して、一時テーブルにデータを挿入します。,
一時テーブルにデータが挿入されたら、次のクエリを実行して、データが挿入されたことを確認します。
1
|
select*from tblemployee;
|
次の出力は次のとおりです。
tblemployeeテーブルのスコープを確認するために、mysqlコマンドラインクライアントから同じクエリを実行します。, id=”22c41ae375″>
1
2
|
use sakila;
select*from tblemployee;
|
出力:ご覧のとおり、クエリにエラーが表示されました:
selectステートメントの出力を使用して一時テーブルを作成します
selectクエリの出力を使用して一時テーブルを作成するとします。, たとえば、filmsテーブルの詳細とそのカテゴリをtemp_film_detailsという名前の一時テーブルに挿入したいとします。 これを行うには、次のクエリを実行します。
詳細が一時テーブルに挿入されたら、次のクエリを実行して一時テーブルのデータを表示します。, id=”2a48234df2″>
1
|
一時テーブルをドロップしますtbl_film_details
|
データベース上では一時テーブルとinnodbテーブルは同じ名前を持つことができるので、temporaryキーワードを指定してください。そうでなければ、同じテーブルがドロップされる場合
summary
この記事では、mysql一時テーブルとその特性について学びました。, また、さまざまなユースケースで一時テーブルを作成および削除する方法も学びました。, 一時テーブルの作成とドロップ
Mysqlを学ぶ:削除と更新ステートメント
MySQLを学ぶ:MySQLストアドプロシージャの基本
MySQLを学ぶ:MySQLビューの基本
- 著者
- 最近の投稿
その専門知識データベースのデザイン、パフォーマンスチューニング、バックアップと復興ポジット、データベースの移動およびシステムのアップグレード 彼はGanpat大学からB.Techを完了しました。 彼はnisargupadhyay87@outlookに到達することができます。,com
- Mysqlを学ぶ:MySQLビューの基本-February3,2021
- MySQLを学ぶ:MySQLストアドプロシージャの基本-January8,2021
- T-SQLスクリプトに基づいて統計を更新する行の変更-december24,2020
Leave a Reply