Rechercher dans le manuel MySQL
25.36 The INFORMATION_SCHEMA VIEWS Table
The VIEWS
table provides information
about views in databases. You must have the
SHOW VIEW
privilege to access this
table.
The VIEWS
table has these columns:
TABLE_CATALOG
The name of the catalog to which the view belongs. This value is always
def
.TABLE_SCHEMA
The name of the schema (database) to which the view belongs.
TABLE_NAME
The name of the view.
VIEW_DEFINITION
The
SELECT
statement that provides the definition of the view. This column has most of what you see in theCreate Table
column thatSHOW CREATE VIEW
produces. Skip the words beforeSELECT
and skip the wordsWITH CHECK OPTION
. Suppose that the original statement was:Then the view definition looks like this:
CHECK_OPTION
The value of the
CHECK_OPTION
attribute. The value is one ofNONE
,CASCADE
, orLOCAL
.IS_UPDATABLE
MySQL sets a flag, called the view updatability flag, at
CREATE VIEW
time. The flag is set toYES
(true) ifUPDATE
andDELETE
(and similar operations) are legal for the view. Otherwise, the flag is set toNO
(false). TheIS_UPDATABLE
column in theVIEWS
table displays the status of this flag. It means that the server always knows whether a view is updatable.If a view is not updatable, statements such
UPDATE
,DELETE
, andINSERT
are illegal and are rejected. (Even if a view is updatable, it might not be possible to insert into it; for details, refer to Section 24.5.3, “Updatable and Insertable Views”.)DEFINER
The account of the user who created the view, in
'
format.user_name
'@'host_name
'SECURITY_TYPE
The view
SQL SECURITY
characteristic. The value is one ofDEFINER
orINVOKER
.CHARACTER_SET_CLIENT
The session value of the
character_set_client
system variable when the view was created.COLLATION_CONNECTION
The session value of the
collation_connection
system variable when the view was created.
Notes
MySQL permits different sql_mode
settings to tell the server the type of SQL syntax to support. For
example, you might use the ANSI
SQL mode to ensure MySQL correctly interprets the standard SQL
concatenation operator, the double bar (||
), in
your queries. If you then create a view that concatenates items,
you might worry that changing the
sql_mode
setting to a value
different from ANSI
could cause
the view to become invalid. But this is not the case. No matter
how you write out a view definition, MySQL always stores it the
same way, in a canonical form. Here is an example that shows how
the server changes a double bar concatenation operator to a
CONCAT()
function:
- Query OK, 0 rows affected (0.00 sec)
- Query OK, 0 rows affected (0.00 sec)
- +----------------------------------+
- | VIEW_DEFINITION |
- +----------------------------------+
- +----------------------------------+
The advantage of storing a view definition in canonical form is
that changes made later to the value of
sql_mode
do not affect the
results from the view. However, an additional consequence is that
comments prior to SELECT
are
stripped from the definition by the server.
Document created the 26/06/2006, last modified the 26/10/2018
Source of the printed document:https://www.gaudry.be/en/mysql-rf-views-table.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.