#テスト テーブル: ユーザーには ID、名前、年齢、性別のフィールドがありますテスト テーブル: 商品には ID、名前、価格のフィールドがありますテスト テーブル: ug には id、userid、goodsid フィールドがありますビューの役割は非常に強力です。私が経験した利点は次のとおりです:mysql ビューの機能: 1. 再利用性の向上、2. プログラムの実行に影響を与えずにデータベースを再構築、3. セキュリティ パフォーマンスの向上、ユーザーごとに異なるビューを設定可能、4. データの作成より明確に。
関数 1 :
関数と同様に、再利用性を向上させます。ユーザー名や商品名を頻繁に取得したい場合。次の SQL 言語を使用する必要があります。例:select a.name as username, b.name as goodsname from user as a, goods as b, ug as c where a.id=c.userid and c.goodsid=b.id;ただし、ビューの場合は異なります。他のビューを作成します。例
create view other as select a.name as username, b.name as goodsname from user as a, goods as b, ug as c where a.id=c.userid and c.goodsid=b.id;ビューを作成すると、次のようにユーザー名と商品名が取得できます。例:
select * from other;上記のSQL文により、ユーザー名と商品名を取得できます。
機能 2:
プログラムの実行に影響を与えずにデータベースを再構築します。特定の要件により、ユーザー テーブル usera と userb テーブルを分離する必要がある場合、2 つのテーブルの構造は次のとおりです。##テスト テーブル: usera には id、name、age フィールドがあります
Test table :userb has id, name, and sex field
このとき、PHP 側で SQL ステートメント: select * from user; を使用すると、テーブルが存在しないというメッセージが表示されます。この問題を解決します。解決策: ビューを作成します。次の SQL ステートメントはビューを作成します。
create view user as select a.name,a.age,b.sex from usera as a, userb as b where a.name=b.name;
上記では、名前が一意であることを前提としています。このとき、php 側では SQL ステートメント select * from user; が使用され、エラーは報告されません。これにより、スクリプトプログラムを変更することなくデータベース構造を変更する機能が実現される。
機能3:安全性能の向上。ユーザーごとに異なるビューを設定できます。たとえば、ユーザーはユーザー テーブルの名前と年齢データのみを取得できますが、性別データは取得できません。このようなビューを作成できます。例は次のとおりです:
create view other as select a.name, a.age from user as a;
この場合、sql ステートメントを使用します: select * from other; 最大でも名前と年齢のデータのみを取得でき、他のデータは取得できません。
機能 4:データをより明確にします。必要なデータに対して必要な種類のビューを作成します。上記の 3 つの関数を分析すると、この関数は簡単に理解できるはずです。
以上がmysqlビューの用途は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。