ホームページ  >  記事  >  データベース  >  mysqlの見方は何ですか

mysqlの見方は何ですか

藏色散人
藏色散人オリジナル
2021-12-28 14:43:3610961ブラウズ

mysql のビューは、mysql データベースにデータを保存するためのインターフェイスであり、仮想テーブルとも言えます。これらのデータは、1 つまたは複数の基本テーブルまたはビューからのデータ、またはユーザー定義のデータです。 data. ; 基本テーブル内のデータが変更されると、それに応じてビュー内のデータも変更されます。

mysqlの見方は何ですか

この記事の動作環境: 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]

mysqlの見方は何ですか

このステートメントは新しいビューを作成できます。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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。