From 5eed07b6a1ab3808852fce882da13fe62939a09c Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Mon, 8 Jan 2024 14:27:50 +0800 Subject: [PATCH 1/2] =?UTF-8?q?fix(mogdb):=E8=A7=86=E5=9B=BE=E5=88=A0?= =?UTF-8?q?=E9=99=A4check=20option=E6=8F=8F=E8=BF=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../v5.0/reference-guide/sql-syntax/ALTER-VIEW.md | 8 +------- .../v5.0/reference-guide/sql-syntax/CREATE-VIEW.md | 2 +- .../v5.1/reference-guide/sql-syntax/ALTER-VIEW.md | 8 +------- .../v5.1/reference-guide/sql-syntax/CREATE-VIEW.md | 2 +- 4 files changed, 4 insertions(+), 16 deletions(-) diff --git a/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/ALTER-VIEW.md b/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/ALTER-VIEW.md index a748df6c..129613df 100644 --- a/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/ALTER-VIEW.md +++ b/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/ALTER-VIEW.md @@ -74,7 +74,7 @@ ALTER VIEW更改视图的各种辅助属性。(如果用户是更改视图的 ```ebnf+diagram AlterView ::= ALTER [DEFINER = user] VIEW view_name [ ( column_name [, ...] ) ] - AS query [WITH [CASCADE | LOCAL] CHECK OPTION]; + AS query; ``` > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** @@ -123,12 +123,6 @@ ALTER VIEW更改视图的各种辅助属性。(如果用户是更改视图的 当VIEW试图提供行级安全时,应使用该参数。 取值范围:Boolean类型,TRUE、FALSE。 - - - **check_option** - - 指定该视图的检查选项。 - - 取值范围:LOCAL、CASCADED。 ## 示例 diff --git a/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-VIEW.md b/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-VIEW.md index 83555370..c7bcb222 100644 --- a/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-VIEW.md +++ b/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-VIEW.md @@ -81,7 +81,7 @@ CreateView ::= CREATE [ OR REPLACE ] [DEFINER = user] [ TEMP | TEMPORARY ] VIEW 如果视图是可自动更新的,系统将把视图上的任何INSERT、UPDATE或者DELETE语句转换成在底层关系上的对应语句。 -如果一个可自动更新的视图包含一个WHERE条件,该条件会限制底层关系的哪些行可以被该视图上的UPDATE以及DELETE语句修改。不过,一个允许被UPDATE修改的行可能让该行不再满足WHERE条件,并且因此也不再能从视图中可见。类似的,一个INSERT命令可能插入不满足WHERE条件的行,因此从该视图中看不到这些行。CHECK OPTION可以用来阻止INSERT和UPDATE命令创建这类从视图中无法看到的行。 +如果一个可自动更新的视图包含一个WHERE条件,该条件会限制底层关系的哪些行可以被该视图上的UPDATE以及DELETE语句修改。不过,一个允许被UPDATE修改的行可能让该行不再满足WHERE条件,并且因此也不再能从视图中可见。类似的,一个INSERT命令可能插入不满足WHERE条件的行,因此从该视图中看不到这些行。 一个更加复杂的、不满足上述条件的视图默认是只读的,系统不允许在该视图上执行INSERT、UPDATE和DELETE语句。可以通过在该视图上创建一个INSTEAD OF触发器来获得可更新视图的效果,该触发器必须把该视图上尝试的插入转换成其他表上合法的动作,更多信息请见[CREATE TRIGGER](CREATE-TRIGGER.md)。另一种方式是创建规则(见[CREATE RULE](CREATE-RULE.md))。 diff --git a/product/zh/docs-mogdb/v5.1/reference-guide/sql-syntax/ALTER-VIEW.md b/product/zh/docs-mogdb/v5.1/reference-guide/sql-syntax/ALTER-VIEW.md index adbbdc85..2cb8446f 100644 --- a/product/zh/docs-mogdb/v5.1/reference-guide/sql-syntax/ALTER-VIEW.md +++ b/product/zh/docs-mogdb/v5.1/reference-guide/sql-syntax/ALTER-VIEW.md @@ -74,7 +74,7 @@ ALTER VIEW更改视图的各种辅助属性。(如果用户是更改视图的 ```ebnf+diagram AlterView ::= ALTER [DEFINER = user] [ security_option ] VIEW view_name [ ( column_name [, ...] ) ] - AS query [WITH [CASCADE | LOCAL] CHECK OPTION]; + AS query; ``` > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** @@ -129,12 +129,6 @@ ALTER VIEW更改视图的各种辅助属性。(如果用户是更改视图的 当VIEW试图提供行级安全时,应使用该参数。 取值范围:Boolean类型,TRUE、FALSE。 - - - **check_option** - - 指定该视图的检查选项。 - - 取值范围:LOCAL、CASCADED。 ## 示例 diff --git a/product/zh/docs-mogdb/v5.1/reference-guide/sql-syntax/CREATE-VIEW.md b/product/zh/docs-mogdb/v5.1/reference-guide/sql-syntax/CREATE-VIEW.md index 9b625dc2..044b45db 100644 --- a/product/zh/docs-mogdb/v5.1/reference-guide/sql-syntax/CREATE-VIEW.md +++ b/product/zh/docs-mogdb/v5.1/reference-guide/sql-syntax/CREATE-VIEW.md @@ -91,7 +91,7 @@ CreateView ::= CREATE [ OR REPLACE ] [ DEFINER = user ] [ SQL SECURITY { DEFINER 如果视图是可自动更新的,系统将把视图上的任何INSERT、UPDATE或者DELETE语句转换成在底层关系上的对应语句。 -如果一个可自动更新的视图包含一个WHERE条件,该条件会限制底层关系的哪些行可以被该视图上的UPDATE以及DELETE语句修改。不过,一个允许被UPDATE修改的行可能让该行不再满足WHERE条件,并且因此也不再能从视图中可见。类似的,一个INSERT命令可能插入不满足WHERE条件的行,因此从该视图中看不到这些行。CHECK OPTION可以用来阻止INSERT和UPDATE命令创建这类从视图中无法看到的行。 +如果一个可自动更新的视图包含一个WHERE条件,该条件会限制底层关系的哪些行可以被该视图上的UPDATE以及DELETE语句修改。不过,一个允许被UPDATE修改的行可能让该行不再满足WHERE条件,并且因此也不再能从视图中可见。类似的,一个INSERT命令可能插入不满足WHERE条件的行,因此从该视图中看不到这些行。 一个更加复杂的、不满足上述条件的视图默认是只读的,系统不允许在该视图上执行INSERT、UPDATE和DELETE语句。可以通过在该视图上创建一个INSTEAD OF触发器来获得可更新视图的效果,该触发器必须把该视图上尝试的插入转换成其他表上合法的动作,更多信息请见[CREATE TRIGGER](CREATE-TRIGGER.md)。另一种方式是创建规则(见[CREATE RULE](CREATE-RULE.md))。 -- Gitee From e85ade083d611dc5425480c926c5176e8735e97e Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Mon, 8 Jan 2024 15:57:07 +0800 Subject: [PATCH 2/2] =?UTF-8?q?fix(mogdb):alter=20view=E8=AF=AD=E6=B3=95?= =?UTF-8?q?=E8=A1=A5=E5=85=85=E6=8F=8F=E8=BF=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../v5.0/about-mogdb/mogdb-new-feature/5.0.1.md | 2 +- .../v5.0/reference-guide/sql-syntax/ALTER-VIEW.md | 11 +++++++++++ .../v5.1/reference-guide/sql-syntax/ALTER-VIEW.md | 11 +++++++++++ .../v5.0/about-mogdb/mogdb-new-feature/5.0.1.md | 2 +- .../v5.0/reference-guide/sql-syntax/ALTER-VIEW.md | 11 +++++++++++ .../v5.1/reference-guide/sql-syntax/ALTER-VIEW.md | 11 +++++++++++ 6 files changed, 46 insertions(+), 2 deletions(-) diff --git a/product/en/docs-mogdb/v5.0/about-mogdb/mogdb-new-feature/5.0.1.md b/product/en/docs-mogdb/v5.0/about-mogdb/mogdb-new-feature/5.0.1.md index a2fc43ac..d164cbb6 100644 --- a/product/en/docs-mogdb/v5.0/about-mogdb/mogdb-new-feature/5.0.1.md +++ b/product/en/docs-mogdb/v5.0/about-mogdb/mogdb-new-feature/5.0.1.md @@ -18,7 +18,7 @@ Supports decoupling of views from their dependencies, so that views can be autom When this feature is enabled: 1. view dependencies can be modified individually, such as modifying tables, modifying views, modifying functions, etc., without forcibly deleting the view; -2. supports automatic compilation when querying the view or manually compiling the view through SQL statement (ALTER VIEW view_name COMPILE). +2. supports automatic compilation when querying the view or manually compiling the view through SQL statement ([ALTER VIEW](../../reference-guide/sql-syntax/ALTER-VIEW.md) view_name COMPILE). ## 3. Fixed Defects diff --git a/product/en/docs-mogdb/v5.0/reference-guide/sql-syntax/ALTER-VIEW.md b/product/en/docs-mogdb/v5.0/reference-guide/sql-syntax/ALTER-VIEW.md index 6569e372..2f753817 100644 --- a/product/en/docs-mogdb/v5.0/reference-guide/sql-syntax/ALTER-VIEW.md +++ b/product/en/docs-mogdb/v5.0/reference-guide/sql-syntax/ALTER-VIEW.md @@ -76,6 +76,13 @@ Only the view owner or a user granted with the ALTER permission can run the **AL [ WITH ( {view_option_name [= view_option_value]} [, ... ] ) ] AS query; ``` + +- Manually compile a view. + + ```ebnf+diagram + ALTER VIEW [ IF EXISTS ] view_name + COMPILE [ CASCADE ]; + ``` ## Parameter Description @@ -119,6 +126,10 @@ Only the view owner or a user granted with the ALTER permission can run the **AL Value range: Boolean type, **TRUE**, and **FALSE**. +- **COMPILE [ CASCADE ]** + + [MogDB 5.0.1](../../about-mogdb/mogdb-new-feature/5.0.1.md) introduces the decoupling feature between views and their dependencies, which supports modifying the base table separately, and after modifying it, the upper view can be recompiled according to the definition, and the view can still be queried normally in the case of successful compilation. To compile a view using this syntax, you need to enable the [view_independent](../guc-parameters/miscellaneous-parameters.md#view_independent) parameter. + ## Examples ```sql diff --git a/product/en/docs-mogdb/v5.1/reference-guide/sql-syntax/ALTER-VIEW.md b/product/en/docs-mogdb/v5.1/reference-guide/sql-syntax/ALTER-VIEW.md index 6569e372..b750f440 100644 --- a/product/en/docs-mogdb/v5.1/reference-guide/sql-syntax/ALTER-VIEW.md +++ b/product/en/docs-mogdb/v5.1/reference-guide/sql-syntax/ALTER-VIEW.md @@ -77,6 +77,13 @@ Only the view owner or a user granted with the ALTER permission can run the **AL AS query; ``` +- Manually compile a view. + + ```ebnf+diagram + ALTER VIEW [ IF EXISTS ] view_name + COMPILE [ CASCADE ]; + ``` + ## Parameter Description - **IF EXISTS** @@ -119,6 +126,10 @@ Only the view owner or a user granted with the ALTER permission can run the **AL Value range: Boolean type, **TRUE**, and **FALSE**. +- **COMPILE [ CASCADE ]** + + Enable the [view_independent](../guc-parameters/miscellaneous-parameters.md#view_independent) parameter to enable the decoupling feature between views and their dependencies, it supports modifying the base table individually, and after the modification, the upper level view can be recompiled according to the definition, and the view can still be queried normally in the case of successful compilation. + ## Examples ```sql diff --git a/product/zh/docs-mogdb/v5.0/about-mogdb/mogdb-new-feature/5.0.1.md b/product/zh/docs-mogdb/v5.0/about-mogdb/mogdb-new-feature/5.0.1.md index be5685ac..de0180fe 100644 --- a/product/zh/docs-mogdb/v5.0/about-mogdb/mogdb-new-feature/5.0.1.md +++ b/product/zh/docs-mogdb/v5.0/about-mogdb/mogdb-new-feature/5.0.1.md @@ -18,7 +18,7 @@ MogDB 5.0.1是MogDB 5.0.0的补丁版本,于2023年8月15日发布,其在Mog 当此特性启用时: 1. 视图的依赖项可以单独进行修改,比如修改表、修改视图、修改函数等,无需强制删除视图; -2. 支持查询视图时自动编译或者手动通过SQL语句(ALTER VIEW view_name COMPILE)编译视图。 +2. 支持查询视图时自动编译或者手动通过SQL语句([ALTER VIEW](../../reference-guide/sql-syntax/ALTER-VIEW.md) view_name COMPILE)编译视图。 ## 3. 修复缺陷 diff --git a/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/ALTER-VIEW.md b/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/ALTER-VIEW.md index 129613df..34e43824 100644 --- a/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/ALTER-VIEW.md +++ b/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/ALTER-VIEW.md @@ -77,6 +77,13 @@ ALTER VIEW更改视图的各种辅助属性。(如果用户是更改视图的 AS query; ``` +- 手动对视图进行重新编译 + + ```ebnf+diagram + ALTER VIEW [ IF EXISTS ] view_name + COMPILE [ CASCADE ]; + ``` + > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** > ALTER VIEW AS 中的 query 新查询不能改变原查询的列定义,包括顺序、列名、数据类型、类型精度等,只可在列表末尾添加其他的列。 @@ -123,6 +130,10 @@ ALTER VIEW更改视图的各种辅助属性。(如果用户是更改视图的 当VIEW试图提供行级安全时,应使用该参数。 取值范围:Boolean类型,TRUE、FALSE。 + +- **COMPILE [ CASCADE ]** + + [MogDB 5.0.1](../../about-mogdb/mogdb-new-feature/5.0.1.md)版本引入视图与其依赖项解耦特性,支持单独修改基表,修改后上层视图可根据定义重新编译,编译成功情况下仍可以正常查询视图。使用此语法编译视图需开启[view_independent](../guc-parameters/miscellaneous-parameters.md#view_independent)参数。 ## 示例 diff --git a/product/zh/docs-mogdb/v5.1/reference-guide/sql-syntax/ALTER-VIEW.md b/product/zh/docs-mogdb/v5.1/reference-guide/sql-syntax/ALTER-VIEW.md index 2cb8446f..80d6bbfc 100644 --- a/product/zh/docs-mogdb/v5.1/reference-guide/sql-syntax/ALTER-VIEW.md +++ b/product/zh/docs-mogdb/v5.1/reference-guide/sql-syntax/ALTER-VIEW.md @@ -77,6 +77,13 @@ ALTER VIEW更改视图的各种辅助属性。(如果用户是更改视图的 AS query; ``` +- 手动对视图进行重新编译 + + ```ebnf+diagram + ALTER VIEW [ IF EXISTS ] view_name + COMPILE [ CASCADE ]; + ``` + > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** > ALTER VIEW AS 中的 query 新查询不能改变原查询的列定义,包括顺序、列名、数据类型、类型精度等,只可在列表末尾添加其他的列。 @@ -130,6 +137,10 @@ ALTER VIEW更改视图的各种辅助属性。(如果用户是更改视图的 取值范围:Boolean类型,TRUE、FALSE。 +- **COMPILE [ CASCADE ]** + + 开启[view_independent](../guc-parameters/miscellaneous-parameters.md#view_independent)参数,以启用视图与其依赖项解耦特性后,支持单独修改基表,修改后上层视图可根据定义重新编译,编译成功情况下仍可以正常查询视图。 + ## 示例 ```sql -- Gitee