MySql のビュー: View データを効率的に管理およびクエリする方法

WBOY
リリース: 2023-06-15 23:09:25
オリジナル
1436 人が閲覧しました

MySQL は現在世界で最も広く使用されているリレーショナル データベースであり、エンタープライズ レベルの開発には欠かせないツールと言えます。 MySQL では、View は 1 つ以上の基本テーブルで構成される仮想テーブルです。 View は MySQL の非常に重要な機能であり、View を使用すると、データのクエリと管理をより効率的に行うことができます。この記事では、誰もが View データを効率的に管理およびクエリする方法を理解できるように、MySQL View について詳しく説明します。

1. View とは

View は MySQL の非常に重要な機能で、SELECT ステートメントを使用して定義できる仮想テーブルです。ビューを定義する SELECT ステートメントには、キーワード SELECT、FROM、WHERE、JOIN などを含めることができます。ビューは 1 つ以上の基本テーブルで構成され、通常は基本テーブルの特定の列のデータのサブセットのみが含まれます。ビューはデータベース内またはアプリケーション内のメモリ内に存在できます。

2. View の利点

  1. クエリ効率の向上

View は複数のテーブルの情報を 1 つのテーブルにマージしてユーザーが呼び出すことができるため、大幅に効率が向上します。クエリ効率 クエリ効率を向上させます。通常、ビューには基本テーブルの特定の列のデータのサブセットのみが含まれるため、データの冗長性と IO 操作の数が削減され、クエリの効率が向上します。

  1. 簡素化されたクエリ ステートメント

View は、よく使用されるクエリ ステートメントをカプセル化できるため、コード量が削減され、プログラムがより簡潔で理解しやすくなります。 View を使用すると、ビジネス ロジックがより明確になり、実装が容易になります。

  1. データ セキュリティの向上

View では、ユーザーがクエリする列と行を制限できるため、データ セキュリティが向上します。 View を通じて、管理者はデータを分類および圧縮するためのアクセス許可をユーザーに提供できるため、データのセキュリティを効果的に保護し、データ漏洩を回避できます。

3. ビューの作成

ビューの作成は CREATE VIEW ステートメントで実行でき、使用形式は次のとおりです:

CREATE VIEW view_name (column_list)
AS
SELECT ステートメント;

このうち、view_name は作成されたビューの名前、column_list はビューに含まれる列の名前リスト、AS はこのステートメントがビュー。SELECT ステートメントはビューを定義する SELECT ステートメントです。

たとえば、従業員テーブルの 3 つの列 (従業員番号、従業員名、電話番号) のみを含む「view_employee」という名前のビューを作成できます。

CREATE VIEW view_employee (employee_no,従業員名 , 電話番号)
AS
SELECT 従業員番号, 従業員名, 電話番号
FROM 従業員;

4. ビュー クエリ

ビュー クエリ操作では、通常のテーブルをクエリできます。 like 同じように進めます。ビュー クエリはテーブル クエリ操作とは異なります。ビュー クエリは物理 IO 操作を実行する必要がありません。基本テーブルからデータを取得するため、テーブルの物理的な場所やストレージを考慮する必要はありません。

たとえば、「view_employee」という名前のビューを作成すると仮定すると、次の操作を通じてビュー内のデータをクエリできます:

SELECT * FROM view_employee;

5 , View の更新と削除

View の更新と削除操作では、次の 2 つの条件を満たす必要があります:

  1. View には GROUP BY、HAVING、DISTINCT、UNION を含めることはできません操作など
  2. ビューの定義には、サブクエリ、ユーザー変数、ストアド プロシージャ、ビューの操作を含めることはできません。

たとえば、特定の列のみを含むビューの場合、UPDATE 操作と DELETE 操作を実行して、ビュー内のデータを更新および削除できます。例:

UPDATE view_employee SET Phone='111111' WHEREemployee_no = '001';

DELETE FROM view_employee WHEREemployee_no = '001';

6. の最適化ビュー

ビューの最適化には、主に次の側面が含まれます:

  1. 複雑なビューの使用を減らすようにしてください。複雑なビューのクエリには、通常、長い時間と CPU リソースが消費されます。
  2. マテリアライズド ビューを使用してビューの結果を物理テーブルに格納すると、パフォーマンスとクエリ効率が向上します。
  3. View ではビューやストアド プロシージャなどの複雑なステートメントを使用しないでください。
  4. View の SELECT ステートメントでは、ORDER BY や LIMIT などの時間のかかる操作を使用しないでください。

7. ビューのバックアップとリカバリ

ビューのバックアップとリカバリはテーブルのバックアップとリカバリと同じで、mysqldump コマンドまたは MySQL Workbench ツールを使用して操作できます。

  1. mysqldump バックアップ ビュー

コマンドの形式は次のとおりです:

mysqldump -u ユーザー名 -p データベース名 ビュー名> ダンプファイル名.sql

たとえば、「view_employee」という名前のビューをバックアップするには、コマンド

mysqldump -u root -p database_name view_employee> view_employee.sql

  1. mysqldump を使用して復元できます。 View

コマンドの形式は次のとおりです:

mysql -u username -p database_name < dump_file_name.sql

たとえば、「view_employee」という名前のビューを復元するには

mysql -u root -p データベース名 < view_employee.sql

結論:

この記事では主に、読者が View データを効率的に管理およびクエリする方法を理解できるように、MySQL View について詳しく説明します。 Viewを利用することで、クエリ効率やデータのセキュリティが向上するだけでなく、ビジネスロジックも明確になります。ただし、View を使用する場合は、リソースの無駄を減らし、パフォーマンスを向上させるために、複雑な View クエリを使用したり、複雑な操作を含めるために View 定義を使用したりするなど、一般的な悪用を避けることにも注意する必要があります。

以上がMySql のビュー: View データを効率的に管理およびクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート