--- MySQLのMySQLのビューの役割を見ます

動作テーブルを示す同様の操作ビュー

役割のMySQLの眺め

テスト表:ユーザーは、ID、名前、年齢、性別フィールドを持っています
テストテーブル:商品は、ID、名前、価格フィールドを持っています
テストテーブル:ID、ユーザーID、goodsidフィールドを持っているUG

ビューの役割が強すぎる、と私は、次のような利点を経験しました。

役割:
    ちょうど関数のように、再利用性を改善しました。あなたは、頻繁に名前のユーザー名や商品を得る場合。次のSQL言語を使用する必要があります。例:
        ユーザ名としてユーザからgoodsnameとしてb.name、Bなどの商品、ここa.id = c.useridとc.goodsid = b.id CとしてUGとしてa.nameを選択します。
    しかし、ビューではありません同じで、他のビューを作成します。
        ユーザからgoodsnameとして選択したユーザ名としてa.name、b.name、Bなどの商品、CなどのUGのような他のビューを作成する場合a.id = c.useridとc.goodsid = b.id。
    ビューを作成した後、あなたが名前のユーザー名や商品を得ることができます。例:
        他から*を選択します。
    上記のSQL文は、ユーザー名と商品名を取得することができます。
役割2:
    データベースの再構築が、プログラムの動作には影響しません。いくつかのニーズに合わせている場合、ユーザーは解体し、表ユーザーBのユーザーAテーブル、次の2つの表の構造を必要とします。
        テスト表:ユーザーAは、ID、名前、年齢フィールドを持っています
        テスト表:ユーザーBは、ID、氏名、性別フィールドを持ちます
    クライアントは、PHPのSQL文を使用している場合、ユーザからの選択*;それはそれを解決するためにどのようにして、テーブルが存在しないよう指示されます。解決策:ビューを作成します。ビューを作成するには、次のSQL文:
        選択a.name、a.age、a.name = b.name bと、ユーザーBとしてユーザーAからb.sexとして表示するユーザーを作成します。
        これらの仮定の名前は一意です。この最終用途のPHPのSQLステートメントで:選択*ユーザーから、どのようなエラーはしません。これは、データベース構造への変更を可能にし、スクリプトの機能を変更しません。
三つの機能:
    安全性能を向上させます。異なるユーザが異なるビューを設定することができます。例:ユーザーは、ユーザー表データの名前と年齢を取得することができ、性別データを取得することができません。だから、ビューを作成することができます。例としては、次のとおりです:
        ユーザーからのAS SELECT a.name、a.ageなど、他のビューを作成します。
    この場合、SQL文の使用は:他のSELECT * FROM;ほとんどでそれはデータのみの名前と年齢を取得することができ、および他のデータが取得されることはありません。
テスト表:ユーザーは、ID、名前、年齢、性別フィールドを持っています
テストテーブル:商品は、ID、名前、価格フィールドを持っています
テストテーブル:ID、ユーザーID、goodsidフィールドを持っているUG

ビューの役割が強すぎる、と私は、次のような利点を経験しました。

役割:
    ちょうど関数のように、再利用性を改善しました。あなたは、頻繁に名前のユーザー名や商品を得る場合。次のSQL言語を使用する必要があります。例:
        ユーザ名としてユーザからgoodsnameとしてb.name、Bなどの商品、ここa.id = c.useridとc.goodsid = b.id CとしてUGとしてa.nameを選択します。
    しかし、ビューではありません同じで、他のビューを作成します。
        ユーザからgoodsnameとして選択したユーザ名としてa.name、b.name、Bなどの商品、CなどのUGのような他のビューを作成する場合a.id = c.useridとc.goodsid = b.id。
    ビューを作成した後、あなたが名前のユーザー名や商品を得ることができます。例:
        他から*を選択します。
    上記のSQL文は、ユーザー名と商品名を取得することができます。
役割2:
    データベースの再構築が、プログラムの動作には影響しません。いくつかのニーズに合わせている場合、ユーザーは解体し、表ユーザーBのユーザーAテーブル、次の2つの表の構造を必要とします。
        テスト表:ユーザーAは、ID、名前、年齢フィールドを持っています
        テスト表:ユーザーBは、ID、氏名、性別フィールドを持ちます
    クライアントは、PHPのSQL文を使用している場合、ユーザからの選択*;それはそれを解決するためにどのようにして、テーブルが存在しないよう指示されます。解決策:ビューを作成します。ビューを作成するには、次のSQL文:
        選択a.name、a.age、a.name = b.name bと、ユーザーBとしてユーザーAからb.sexとして表示するユーザーを作成します。
        これらの仮定の名前は一意です。この最終用途のPHPのSQLステートメントで:選択*ユーザーから、どのようなエラーはしません。これは、データベース構造への変更を可能にし、スクリプトの機能を変更しません。
三つの機能:
    安全性能を向上させます。異なるユーザが異なるビューを設定することができます。例:ユーザーは、ユーザー表データの名前と年齢を取得することができ、性別データを取得することができません。だから、ビューを作成することができます。例としては、次のとおりです:
        ユーザーからのAS SELECT a.name、a.ageなど、他のビューを作成します。
    この場合、SQL文の使用は:他のSELECT * FROM;ほとんどでそれはデータのみの名前と年齢を取得することができ、および他のデータが取得されることはありません。

おすすめ

転載: www.cnblogs.com/huang99882008/p/11112170.html