ホームページ >データベース >mysql チュートリアル >mysqlの見方は何ですか
mysql のビューは、mysql データベースにデータを保存するためのインターフェイスであり、仮想テーブルとも言えます。これらのデータは、1 つまたは複数の基本テーブルまたはビューからのデータ、またはユーザー定義のデータです。 data. ; 基本テーブル内のデータが変更されると、それに応じてビュー内のデータも変更されます。
この記事の動作環境: Windows 7 システム、mysql バージョン 5.0、Dell G3 コンピューター。
mysql の見方は何ですか?
mysql View
View は、mysql データベースにデータを保存するためのインターフェイスです
はじめに
View はデータを保存するためのインターフェイスであり、仮想テーブルとも言えます。このデータは、1 つまたは複数の基本テーブル (またはビュー) からのデータにすることができます。ユーザー定義データにすることもできます。実際には、データはビューに格納されず、基本テーブルに格納されたままになります。基本テーブルのデータが変更されると、それに応じてビューのデータも変更されます。
関数
1. Mysql ビューによりクエリが非常に明確になり、ビューに保存されるデータは必要なデータであり、ユーザーの操作を簡素化できます。
2, mysql ビューはデータをより安全にします。ビュー内のデータはビューには存在しませんが、依然として基本テーブル内にあります。ビューの関係を通じて、重要なデータを効果的に保護できます
タイプ
Mysql ビューには、MERGE、TEMPTABLE、UNDEFINED の 3 つのタイプがあります。 ALGORITHM 句がない場合、デフォルトのアルゴリズムは UNDEFINED になります。アルゴリズムは、MySQL がビューを処理する方法に影響します。
1, MERGE は、ビューを参照するステートメントのテキストをビュー定義とマージし、ビュー定義の特定の部分がステートメントの対応する部分を置き換えます。
2, TEMPTABLE、ビューの結果は一時テーブルに配置され、ステートメントの実行に使用されます。
3、未定義、MySQL が使用するアルゴリズムを選択します。可能であれば、TEMPTABLE よりも MERGE を優先します。これは、一般に MERGE の方が効率的であり、一時テーブルが使用されている場合はビューが更新できないためです。
文法
CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}] VIEW view_name [(column_list)] AS select_statement [WITH [CASCADED | LOCAL] CHECK OPTION]
このステートメントは新しいビューを作成できます。OR REPLACE 句が指定されている場合、このステートメントは Replace も行うことができます既存のビュー。 select_statement は、ビューの定義を与える SELECT ステートメントです。このステートメントは、ベース テーブルまたは他のビューから選択できます。
このステートメントには、ビューに対する CREATE VIEW 権限と、SELECT ステートメントで選択された各列に対する特定の権限が必要です。 SELECT ステートメントの他の場所で使用される列には、SELECT 権限が必要です。 OR REPLACE 句がある場合は、ビューに対する DROP 権限が必要です。
ビューはデータベースに属します。デフォルトでは、現在のデータベースに新しいビューが作成されます。特定のデータベースにビューを明示的に作成するには、作成時に名前を db_name.view_name として指定します。
mysql> CREATE VIEW test.v AS SELECT * FROM t;
テーブルとビューはデータベース内で同じ名前空間を共有するため、データベースに同じ名前のテーブルとビューを含めることはできません。
ビューには、ベース テーブルと同様に、重複のない一意の列名が必要です。デフォルトでは、SELECT ステートメントによって取得された列名がビューの列名として使用されます。ビュー列の明示的な名前を定義するには、カンマで区切られた ID をリストするオプションの column_list 句を使用します。 column_list 内の名前の数は、SELECT ステートメントによって取得される列の数と等しくなければなりません。
SELECT ステートメントによって取得される列は、テーブル列への単純な参照である場合があります。関数、定数値、演算子などを使用した式にすることもできます。
SELECT ステートメント内の修飾されていないテーブルまたはビューは、デフォルトのデータベースに従って解釈されます。ビューは、テーブル名またはビュー名を適切なデータベース名で修飾することにより、別のデータベース内のテーブルまたはビューを参照できます。
推奨学習: 「mysql ビデオ チュートリアル 」
以上がmysqlの見方は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。