MySQLビューの原理と使用法の詳細な説明

MySQLビューの原理と使用法の詳細な説明

この記事では、例を使用して MySQL ビューの原理と使用方法を説明します。ご参考までに、詳細は以下の通りです。

この記事の内容:

  • ビューとは何か
  • ビューの作成
  • 表示 表示
  • ビューの変更
  • ビューの削除
  • ビューに対するデータ操作

リリース日: 2018-04-13


ビューとは:

  • ビューは、クエリ結果に基づく仮想テーブルです。データの取得元となるテーブルはベース テーブルと呼ばれます。
  • ビューの作成と削除は基本テーブルに影響しません。
  • ビューの挿入および変更操作は基本テーブルに影響します。
  • ビューが複数の基本テーブルから派生している場合、基本テーブルを変更することはできません。
  • ビューの用途:
    • 1. ビューはクエリ結果に基づいているため、ビューでは、ユーザーに表示すべきではないベース テーブル内の一部のデータ情報を非表示にすることができます (たとえば、開発者はユーザー情報テーブルを必要としますが、ユーザーのパスワード情報は表示すべきではありません)。
    • 2. ビューは、クエリ情報を保存して操作を簡単にできる仮想テーブルです。
    • ......


ビューを作成します。

  • 構文: create view view name as select statement [with check option]; [select statement は複数のテーブルから結果をクエリできます: 結合クエリ、結合クエリ]
    • チェックオプションを使用すると、where などの条件文に基づいて挿入および変更操作が制限されます (たとえば、取得したビュー データが男性の場合、男性を女性に変更することはできません)。
        ビュー man_info を作成し、select * from student で gender="male" を指定します。

補充:

  • ビューを作成するための別のオプションがあります: ビューアルゴリズム (ここでは説明しません。知りたい場合は Baidu で検索してください)


景色をご覧ください:

  • ビューは仮想テーブルです。すべてのテーブル ビュー ステートメントはビューで使用できます。
    • すべてのビューを表示: テーブル/ビューを表示します。
    • ビュー構造を表示します: ビュー名から列を desc/describe/show します。
    • ビュー作成ステートメントを表示します: show create table/view view name;

ビューの変更:

  • ビュー定義エラーが発生する場合があり、その場合はビュー変更操作が実行されます。
  • 構文: alter view view name as new select statement;
user_view を select * from user として作成します。
ビュー user_view を変更し、username、money を user から選択します。

補充:

  • ビューは仮想テーブルなので、ビューを変更する別の方法があります。ビューの作成または置換ビュー作成ステートメント; [古いビューは新しいビューによって上書きされます]

ビューの削除:

  • 構文: drop view view name[,view name…];
  • 例:
    ビュー student_class、student_info を削除します。

ビューのデータ操作:

  • ビューが複数の基本テーブルから派生している場合、基本テーブルを変更することはできません。ただし、理論的には更新は許可されます。

データビューを表示:

  • 構文: select field list from view name; [基本テーブルのクエリ操作と一致します。 】

ビューへのデータ挿入:

  • データが複数の基本テーブルから取得される場合、挿入操作は実行できません。
  • 構文: insert into view name values(); [基本テーブルの挿入操作と一致します。 】
  • 注: ビュー構造は基本テーブルから取得されるため、基本テーブルの制約を受け入れる必要があります。フィールドを空にすることが許可されていないが、ビューの挿入操作で値が割り当てられていない場合、挿入は失敗します。

データの変更を表示:

  • 構文: update view name set field name = value where condition; [基本テーブルの変更操作と一致します。 】

ビューからデータを削除する:

  • データが複数の基本テーブルから取得される場合、削除操作は実行できません。
  • 構文: delete from view name where condition; [基本テーブルの削除操作と一致します。 】

MySQL 関連のコンテンツに興味のある読者は、このサイトの次のトピックをチェックしてください: 「MySQL クエリ スキル」、「MySQL トランザクション操作スキル」、「MySQL ストアド プロシージャ スキル」、「MySQL データベース ロック関連スキルの概要」、および「MySQL 共通関数の概要」

この記事が皆様のMySQLデータベース設計に役立つことを願っています。

以下もご興味があるかもしれません:
  • MySQLにおけるビューの作成(CREATE VIEW)と使用制限の詳しい説明
  • MySQLでビューを作成する方法
  • MySQL ビューの原理と使用法の詳細な分析
  • MySQLのビューとインデックスの使い方と違いの詳細な説明
  • MySql ビュー、トリガー、ストアド プロシージャに関する簡単な説明
  • MySql ビュー トリガー ストアド プロシージャの詳細な説明
  • MySQL ビュー管理ビューの例の詳細説明 [追加、削除、変更、クエリ操作]
  • MySQLで更新可能なビューを作成する方法の詳細な説明
  • MySQL における単一テーブルと複数テーブル、およびビューと一時テーブルに対する Update と Select の違い
  • mysql 3つのテーブルを接続してビューを作成する
  • MySQL ビューの原則分析

<<:  Windows 10 に Linux サブシステムをインストールする 2 つの方法 (画像とテキスト付き)

>>:  この記事では、Vue 3.0 レスポンシブの使い方を説明します。

推薦する

Linux で AutoFs マウント サービスをインストールするチュートリアル

Samba サービスでも NFS サービスでも、サーバーの起動時にリモート共有リソースが自動的にマ...

MYSQL大規模書き込み問題の最適化の詳細な説明

概要: MySQL のパフォーマンス最適化について話すとき、誰もがクエリ パフォーマンスを向上させる...

MySQL SQL ステートメントのパフォーマンス チューニングの簡単な例

MySQL SQL ステートメントのパフォーマンス チューニングの簡単な例サーバー開発を行う際には、...

SQL 集計、グループ化、並べ替え

目次1. 集計クエリ1. COUNT関数2. SUM関数3. AVG関数4. MAX関数とMIN関数...

npm 淘宝ミラー変更説明

1. トップレベルの使用法1. cnpmをインストールする npm i -g cnpm --regi...

Tomcatのデフォルトパスの設定によって発生するプロジェクトURLの競合を解決する方法の詳細な説明

序文Tomcat は優れた Java コンテナですが、避けられない小さな落とし穴もいくつかあります。...

入力選択スタイルを変更する CSS 疑似クラスのサンプルコード

注: この表はW3Schoolチュートリアルから引用したものです疑似要素の分類と機能: 入力選択スタ...

JavaScript は 3 つの一般的な Web 効果 (オフセット、クライアント、スクロール シリーズ) を実装します。

目次1. 要素オフセットシリーズ2. 要素表示領域クライアントシリーズ3. 要素スクロールシリーズ1...

GDBデバッグMySQL実戦ソースコードコンパイルとインストール

ソースコードをダウンロード git クローン https://github.com/mysql/my...

フロントエンド JavaScript でローカルあいまい検索機能を実装する方法の例

目次1. プロジェクトの見通し2. 知識ポイントObject.assign() の使用法filter...

MySQL ジョイントインデックス(複合インデックス)の実装

共同インデックスこの記事におけるジョイントインデックスの定義は次のとおりです (MySQL): AL...

Docker環境にJenkinsコンテナをインストールする詳細なチュートリアル

推奨される Docker 学習教材: https://www.runoob.com/docker/d...

MySQL共通インデックスとユニークインデックスの詳細な説明

シナリオ1. ID番号のフィールドを備えた市民システムを維持する2. ビジネス コードでは、重複する...

MySQL の分離レベル、ロック、MVCC の紹介

この記事の目的は、これらの概念とその機能の関係を明らかにすることです。 Mysql がトランザクショ...

vue router-view のネストされた表示実装

目次1. ルーティング構成2. Vueページのネスト3. ネストされた関係1. ルーティング構成 定...