ビュー

VIEWSテーブルは、SQL ビューに関する情報を提供します。

USE information_schema; DESC views;
+----------------------+--------------+------+------+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------------------+--------------+------+------+---------+-------+ | TABLE_CATALOG | varchar(512) | NO | | NULL | | | TABLE_SCHEMA | varchar(64) | NO | | NULL | | | TABLE_NAME | varchar(64) | NO | | NULL | | | VIEW_DEFINITION | longblob | NO | | NULL | | | CHECK_OPTION | varchar(8) | NO | | NULL | | | IS_UPDATABLE | varchar(3) | NO | | NULL | | | DEFINER | varchar(77) | NO | | NULL | | | SECURITY_TYPE | varchar(7) | NO | | NULL | | | CHARACTER_SET_CLIENT | varchar(32) | NO | | NULL | | | COLLATION_CONNECTION | varchar(32) | NO | | NULL | | +----------------------+--------------+------+------+---------+-------+ 10 rows in set (0.00 sec)
CREATE VIEW test.v1 AS SELECT 1; SELECT * FROM views\G
*************************** 1. row *************************** TABLE_CATALOG: def TABLE_SCHEMA: test TABLE_NAME: v1 VIEW_DEFINITION: SELECT 1 CHECK_OPTION: CASCADED IS_UPDATABLE: NO DEFINER: root@127.0.0.1 SECURITY_TYPE: DEFINER CHARACTER_SET_CLIENT: utf8mb4 COLLATION_CONNECTION: utf8mb4_0900_ai_ci 1 row in set (0.00 sec)

VIEWSテーブルのフィールドは次のとおりです。

  • TABLE_CATALOG : ビューが属するカタログの名前。この値は常にdefです。
  • TABLE_SCHEMA : ビューが属するスキーマの名前。
  • TABLE_NAME : ビュー名。
  • VIEW_DEFINITION : ビューの作成時にSELECTステートメントで作成されるビューの定義。
  • CHECK_OPTION : CHECK_OPTIONの値。値のオプションはNONECASCADE 、およびLOCALです。
  • IS_UPDATABLE : UPDATE / INSERT / DELETEがビューに適用されるかどうか。 TiDB では、値は常にNOです。
  • DEFINER : ビューを作成したユーザーの名前で、形式は'user_name'@'host_name'です。
  • SECURITY_TYPE : SQL SECURITYの値。値のオプションはDEFINERINVOKERです。
  • CHARACTER_SET_CLIENT : ビューが作成されたときのcharacter_set_clientセッション変数の値。
  • COLLATION_CONNECTION : ビューが作成されたときのcollation_connectionセッション変数の値。