This is an automated email from the ASF dual-hosted git repository.

jark pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git


The following commit(s) were added to refs/heads/master by this push:
     new 3952bfa  [FLINK-17635][docs][table] Add documentation about view 
support
3952bfa is described below

commit 3952bfa029df4d278a8f694d3e89db9de398006b
Author: Leonard Xu <xbjt...@163.com>
AuthorDate: Mon Jun 8 19:52:21 2020 +0800

    [FLINK-17635][docs][table] Add documentation about view support
    
    This closes #12502
---
 docs/dev/table/sql/create.md     | 20 ++++++++++++++++++++
 docs/dev/table/sql/create.zh.md  | 20 ++++++++++++++++++++
 docs/dev/table/sql/drop.md       | 20 ++++++++++++++++++++
 docs/dev/table/sql/drop.zh.md    | 20 ++++++++++++++++++++
 docs/dev/table/sql/index.md      |  4 ++--
 docs/dev/table/sql/index.zh.md   |  4 ++--
 docs/dev/table/sql/queries.md    | 22 +++++++++++++++++++++-
 docs/dev/table/sql/queries.zh.md | 22 +++++++++++++++++++++-
 8 files changed, 126 insertions(+), 6 deletions(-)

diff --git a/docs/dev/table/sql/create.md b/docs/dev/table/sql/create.md
index d3e454d..dc799bb 100644
--- a/docs/dev/table/sql/create.md
+++ b/docs/dev/table/sql/create.md
@@ -31,6 +31,7 @@ Flink SQL supports the following CREATE statements for now:
 
 - CREATE TABLE
 - CREATE DATABASE
+- CREATE VIEW
 - CREATE FUNCTION
 
 ## Run a CREATE statement
@@ -351,6 +352,25 @@ The key and value of expression `key1=val1` should both be 
string literal.
 
 {% top %}
 
+## CREATE VIEW
+{% highlight sql %}
+CREATE [TEMPORARY] VIEW [IF NOT EXISTS] [catalog_name.][db_name.]view_name
+  [{columnName [, columnName ]* }] [COMMENT view_comment]
+  AS query_expression
+{% endhighlight %}
+
+Create a view with the given query expression. If a view with the same name 
already exists in the catalog, an exception is thrown.
+
+**TEMPORARY**
+
+Create temporary view that has catalog and database namespaces and overrides 
views.
+
+**IF NOT EXISTS**
+
+If the view already exists, nothing happens.
+
+{% top %}
+
 ## CREATE FUNCTION
 {% highlight sql%}
 CREATE [TEMPORARY|TEMPORARY SYSTEM] FUNCTION 
diff --git a/docs/dev/table/sql/create.zh.md b/docs/dev/table/sql/create.zh.md
index d4f9d79..8348d52 100644
--- a/docs/dev/table/sql/create.zh.md
+++ b/docs/dev/table/sql/create.zh.md
@@ -31,6 +31,7 @@ CREATE 语句用于向当前或指定的 [Catalog]({{ site.baseurl }}/zh/dev/tab
 
 - CREATE TABLE
 - CREATE DATABASE
+- CREATE VIEW
 - CREATE FUNCTION
 
 ## 执行 CREATE 语句
@@ -344,6 +345,25 @@ CREATE DATABASE [IF NOT EXISTS] [catalog_name.]db_name
 
 {% top %}
 
+## CREATE VIEW
+{% highlight sql %}
+CREATE [TEMPORARY] VIEW [IF NOT EXISTS] [catalog_name.][db_name.]view_name
+  [{columnName [, columnName ]* }] [COMMENT view_comment]
+  AS query_expression
+{% endhighlight %}
+
+根据给定的 query 语句创建一个视图。若数据库中已经存在同名视图会抛出异常.
+
+**TEMPORARY**
+
+创建一个有 catalog 和数据库命名空间的临时视图,并覆盖原有的视图。
+
+**IF NOT EXISTS**
+
+若该视图已经存在,则不会进行任何操作。
+
+{% top %}
+
 ## CREATE FUNCTION
 {% highlight sql%}
 CREATE [TEMPORARY|TEMPORARY SYSTEM] FUNCTION
diff --git a/docs/dev/table/sql/drop.md b/docs/dev/table/sql/drop.md
index 6f340e8..bcaea0b 100644
--- a/docs/dev/table/sql/drop.md
+++ b/docs/dev/table/sql/drop.md
@@ -31,6 +31,7 @@ Flink SQL supports the following DROP statements for now:
 
 - DROP TABLE
 - DROP DATABASE
+- DROP VIEW
 - DROP FUNCTION
 
 ## Run a DROP statement
@@ -143,6 +144,25 @@ Dropping a non-empty database triggers an exception. 
Enabled by default.
 
 Dropping a non-empty database also drops all associated tables and functions.
 
+## DROP VIEW
+
+{% highlight sql %}
+DROP [TEMPORARY] VIEW  [IF EXISTS] [catalog_name.][db_name.]view_name
+{% endhighlight %}
+
+Drop a view that has catalog and database namespaces. If the view to drop does 
not exist, an exception is thrown.
+
+**TEMPORARY**
+
+Drop temporary view that has catalog and database namespaces.
+
+**IF EXISTS**
+
+If the view does not exist, nothing happens.
+
+**MAINTAIN DEPENDENCIES**
+Flink does not maintain dependencies of view by CASCADE/RESTRICT keywords, the 
current way is producing postpone error message when user tries to use the view 
under the scenarios like the underlying table of view has been dropped.
+
 ## DROP FUNCTION
 
 {% highlight sql%}
diff --git a/docs/dev/table/sql/drop.zh.md b/docs/dev/table/sql/drop.zh.md
index 51ac456..8d1b76d 100644
--- a/docs/dev/table/sql/drop.zh.md
+++ b/docs/dev/table/sql/drop.zh.md
@@ -31,6 +31,7 @@ Flink SQL 目前支持以下 DROP 语句:
 
 - DROP TABLE
 - DROP DATABASE
+- DROP VIEW
 - DROP FUNCTION
 
 ## 执行 DROP 语句
@@ -143,6 +144,25 @@ DROP DATABASE [IF EXISTS] [catalog_name.]db_name [ 
(RESTRICT | CASCADE) ]
 
 删除一个非空数据库时,把相关联的表与函数一并删除。
 
+## DROP VIEW
+
+{% highlight sql %}
+DROP [TEMPORARY] VIEW  [IF EXISTS] [catalog_name.][db_name.]view_name
+{% endhighlight %}
+
+删除一个有 catalog 和数据库命名空间的视图。若需要删除的视图不存在,则会产生异常。
+
+**TEMPORARY**
+
+删除一个有 catalog 和数据库命名空间的临时视图。
+
+**IF EXISTS**
+
+若视图不存在,则不会进行任何操作。
+
+**依赖管理**
+Flink 没有使用 CASCADE / RESTRICT 
关键字来维护视图的依赖关系,当前的方案是在用户使用视图时再提示错误信息,比如在视图的底层表已经被删除等场景。
+
 ## DROP FUNCTION
 
 {% highlight sql%}
diff --git a/docs/dev/table/sql/index.md b/docs/dev/table/sql/index.md
index 42a1f2a..73076e8 100644
--- a/docs/dev/table/sql/index.md
+++ b/docs/dev/table/sql/index.md
@@ -29,8 +29,8 @@ This page describes the SQL language supported in Flink, 
including Data Definiti
 This page lists all the supported statements supported in Flink SQL for now:
 
 - [SELECT (Queries)](queries.html)
-- [CREATE TABLE, DATABASE, FUNCTION](create.html)
-- [DROP TABLE, DATABASE, FUNCTION](drop.html)
+- [CREATE TABLE, DATABASE, VIEW, FUNCTION](create.html)
+- [DROP TABLE, DATABASE, VIEW, FUNCTION](drop.html)
 - [ALTER TABLE, DATABASE, FUNCTION](alter.html)
 - [INSERT](insert.html)
 - [SQL HINTS](hints.html)
diff --git a/docs/dev/table/sql/index.zh.md b/docs/dev/table/sql/index.zh.md
index 3f7b49f..b93f4ff 100644
--- a/docs/dev/table/sql/index.zh.md
+++ b/docs/dev/table/sql/index.zh.md
@@ -29,8 +29,8 @@ under the License.
 本页面列出了目前 Flink SQL 所支持的所有语句:
 
 - [SELECT (查询)](queries.html)
-- [CREATE TABLE, DATABASE, FUNCTION](create.html)
-- [DROP TABLE, DATABASE, FUNCTION](drop.html)
+- [CREATE TABLE, DATABASE, VIEW, FUNCTION](create.html)
+- [DROP TABLE, DATABASE, VIEW, FUNCTION](drop.html)
 - [ALTER TABLE, DATABASE, FUNCTION](alter.html)
 - [INSERT](insert.html)
 - [SQL HINTS](hints.html)
diff --git a/docs/dev/table/sql/queries.md b/docs/dev/table/sql/queries.md
index 643ad8c..add05e8 100644
--- a/docs/dev/table/sql/queries.md
+++ b/docs/dev/table/sql/queries.md
@@ -294,7 +294,7 @@ String literals must be enclosed in single quotes (e.g., 
`SELECT 'Hello World'`)
 
 ## Operations
 
-### Show and Use
+### Show, Describe, and Use
 
 <div markdown="1">
 <table class="table table-bordered">
@@ -323,10 +323,30 @@ SHOW DATABASES;
 {% highlight sql %}
 SHOW TABLES;
 {% endhighlight %}
+        <p>Show all views in the current database in the current catalog</p>
+{% highlight sql %}
+SHOW VIEWS;
+{% endhighlight %}
       </td>
     </tr>
     <tr>
       <td>
+        <strong>Describe</strong><br>
+        <span class="label label-primary">Batch</span> <span class="label 
label-primary">Streaming</span>
+      </td>
+      <td>
+                       <p>Describe the schema of the given table.</p>
+{% highlight sql %}
+DESCRIBE myTable;
+{% endhighlight %}
+            <p>Describe the schema of the given view.</p>
+{% highlight sql %}
+DESCRIBE myView;
+{% endhighlight %}
+      </td>
+    </tr>    
+    <tr>
+      <td>
         <strong>Use</strong><br>
         <span class="label label-primary">Batch</span> <span class="label 
label-primary">Streaming</span>
       </td>
diff --git a/docs/dev/table/sql/queries.zh.md b/docs/dev/table/sql/queries.zh.md
index d6b6cff..e4e5d69 100644
--- a/docs/dev/table/sql/queries.zh.md
+++ b/docs/dev/table/sql/queries.zh.md
@@ -294,7 +294,7 @@ Flink SQL 对于标识符(表、属性、函数名)有类似于 Java 的词
 
 ## 操作符
 
-### Show 与 Use
+### Show, Describe 与 Use
 
 <div markdown="1">
 <table class="table table-bordered">
@@ -323,10 +323,30 @@ SHOW DATABASES;
 {% highlight sql %}
 SHOW TABLES;
 {% endhighlight %}
+        <p>显示当前数据库、Catalog中的所有视图</p>
+{% highlight sql %}
+SHOW VIEWS;
+{% endhighlight %}
       </td>
     </tr>
     <tr>
       <td>
+        <strong>Describe</strong><br>
+        <span class="label label-primary">批处理</span> <span class="label 
label-primary">流处理</span>
+      </td>
+      <td>
+                       <p>描述给定表的 Schema</p>
+{% highlight sql %}
+DESCRIBE myTable;
+{% endhighlight %}
+            <p>描述给定视图的 Schema</p>
+{% highlight sql %}
+DESCRIBE myView;
+{% endhighlight %}
+      </td>
+    </tr>    
+    <tr>
+      <td>
         <strong>Use</strong><br>
         <span class="label label-primary">批处理</span> <span class="label 
label-primary">流处理</span>
       </td>

Reply via email to