ホームページ >データベース >mysql チュートリアル >mysqlビュー用のスペースはありますか?
Mysql ビューにスペースがありません。 MySQL ビューは、データベース内に実際には存在せず、スペースを割り当てない仮想テーブルです。 MySQL データベースはビューの定義のみを保存し、ビュー内のデータは保存しません。これらのデータは、ビューを定義するクエリによって参照される実際のテーブルに保存されます。
(推奨チュートリアル: mysql ビデオ チュートリアル)
MySQL ビュー (View) は、実際のテーブルでは、ビューは列と行で構成されますが、ビューは実際にはデータベースに存在しません。行と列のデータは、ビューを定義するクエリで使用されるテーブルから取得され、ビューの使用時に動的に生成されます。
データベースにはビューの定義のみが保存され、ビュー内のデータは保存されません。これらのデータは、ビューを定義するクエリによって参照される実際のテーブルに保存されます。ビューを使用してデータをクエリすると、データベースは実際のテーブルから対応するデータを取得します。したがって、ビュー内のデータは実際のテーブル内のデータに依存します。実際のテーブルのデータが変更されると、ビューに表示されるデータも変更されます。
ビューでは、元のテーブルからユーザーにとって有益な情報を選択できます。ユーザーにとって有益ではない情報やユーザーが知る権限を持たない情報は、フィルタリングと同様に直接ブロックできます。 。これにより、アプリケーションが簡素化されるだけでなく、システムのセキュリティも確保されます。
たとえば、次のデータベースには会社の部門テーブル部門があります。テーブルには、部門番号(d_id)、部門名(d_name)、機能(function)、オフィスの住所(address)が含まれます。部門テーブルの構造は次のとおりです。
mysql> DESC department; +----------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------+-------------+------+-----+---------+-------+ | d_id | int(4) | NO | PRI | NULL | | | d_name | varchar(20) | NO | UNI | NULL | | | function | varchar(50) | YES | | NULL | | | address | varchar(50) | YES | | NULL | | +----------+-------------+------+-----+---------+-------+ 4 rows in set (0.02 sec)
従業員テーブル worker もあります。テーブルには、従業員の役職番号 (num)、部門番号 (d_id)、名前 (name)、性別 (sex)、生年月日 (birthday)、自宅住所 (homeaddress) が含まれます。従業員テーブルの構造は以下のとおりです:
mysql> DESC worker; +-------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+-------------+------+-----+---------+-------+ | num | int(10) | NO | PRI | NULL | | | d_id | int(4) | YES |MUL | NULL | | | name | varchar(20) | NO | | NULL | | | sex | varchar(4) | NO | | NULL | | | birthday | datetime | YES | | NULL | | | homeaddress | varchar(50) | YES | | NULL | | +-------------+-------------+------+-----+---------+-------+ 6 rows in set (0.01 sec)
各部門のリーダーの権限範囲が異なるため、各部門のリーダーはその部門の従業員情報のみを参照でき、またリーダーはその部門の従業員情報を参照できないこともあります。従業員の誕生日と自宅の住所に注意してください。この目的を達成するために、各部門のリーダーに対して、その部門の従業員の指定された情報のみを閲覧できるビューを設定することができます。
たとえば、製造部門用に product _view という名前のビューを作成します。ビュー product_view を通じて、生産部門のリーダーは、生産部門の従業員の役職番号、名前、性別、その他の情報のみを確認できます。これらの部門テーブルと従業員テーブルの情報はそれぞれのテーブルにまだ存在しており、ビュー product_view にはデータ情報は保存されません。部門テーブルと従業員テーブルの情報が変更されると、それに応じてビュー product_view に表示される情報も変更されます。
ヒント: 複数のテーブルから指定したフィールドのデータを頻繁にクエリする必要がある場合は、これらのテーブルにビューを作成し、このビューを通じてこれらのフィールドのデータを表示できます。
MySQL ビューは入力パラメータの機能をサポートしていないため、依然として対話性が不足しています。ただし、あまり変更のない操作の場合は、ビューを使用することでユーザーの操作を大幅に簡素化できます。
ビューはデータ テーブルと変わりません。それらの違いは次の点にあります:
ビューはデータベース内の実際のテーブルではありませんが、 a 仮想テーブル。その構造とデータは、データ内の実際のテーブルのクエリに基づいています。
データベースに保存されているクエリ操作 SQL ステートメントは、ビューのコンテンツを定義します。列データと行データは、ビュー クエリによって参照される実際のテーブルから取得されます。これらのデータは動的に生成されますビューが参照されるとき。
ビューには実際の物理レコードがなく、データ セットの形式でデータベースに保存されません。対応するデータは実際には、ビューによって参照される実際のテーブルに保存されます。
ビューはデータのウィンドウであり、テーブルはコンテンツです。テーブルは実際のデータのストレージ ユニットですが、ビューはさまざまな表示方法でデータを表示するだけであり、そのデータ ソースは依然として実際のテーブルです。
View は、データ テーブルを表示する方法です。データ テーブル内の特定のフィールドで構成されるデータをクエリできます。これは単なる SQL ステートメントのコレクションです。セキュリティの観点から見ると、ビューのデータ セキュリティはより高く、ビューを使用するユーザーはデータ テーブルに触れず、テーブル構造を知りません。
ビューの作成と削除はビュー自体にのみ影響し、対応する基本テーブルには影響しません。
以上がmysqlビュー用のスペースはありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。