You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ignite.apache.org by vk...@apache.org on 2022/01/28 21:00:43 UTC
[ignite-website] branch master updated: Documentation for 3.0.0-alpha4
This is an automated email from the ASF dual-hosted git repository.
vkulichenko pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite-website.git
The following commit(s) were added to refs/heads/master by this push:
new 6bdcc6d Documentation for 3.0.0-alpha4
6bdcc6d is described below
commit 6bdcc6df769dda9e172fb22aed8171b4acbdcb61
Author: Ubuntu <ub...@ip-172-31-52-14.ec2.internal>
AuthorDate: Fri Jan 28 21:00:36 2022 +0000
Documentation for 3.0.0-alpha4
---
docs/3.0.0-alpha/binary-protocol.html | 113 +-
docs/3.0.0-alpha/ignite-cli-tool.html | 113 +-
.../images/svg/alter_table_column_no_bnf1.svg | 124 +
.../images/svg/alter_table_column_no_bnf2.svg | 143 ++
.../images/svg/alter_table_column_yes_bnf1.svg | 124 +
.../images/svg/alter_table_column_yes_bnf2.svg | 143 ++
.../images/svg/alter_table_logging_bnf.svg | 137 +
.../images/svg/alter_table_no_logging_bnf.svg | 137 +
.../images/svg/column_definition_or_list_bnf.svg | 156 ++
docs/3.0.0-alpha/images/svg/column_list_bnf.svg | 144 ++
.../images/svg/columns_definition_bnf.svg | 188 ++
docs/3.0.0-alpha/images/svg/create_table_bnf1.svg | 120 +
docs/3.0.0-alpha/images/svg/create_table_bnf2.svg | 196 ++
docs/3.0.0-alpha/images/svg/drop_table_bnf.svg | 129 +
docs/3.0.0-alpha/images/svg/pk_constraint_bnf.svg | 162 ++
.../images/svg/qualified_table_name_bnf.svg | 124 +
docs/3.0.0-alpha/index.html | 128 +-
.../installation/installing-using-exe.html | 113 +-
docs/3.0.0-alpha/persistence.html | 113 +-
.../quick-start/getting-started-guide.html | 135 +-
docs/3.0.0-alpha/rebalance.html | 131 +-
docs/3.0.0-alpha/sql-reference/ddl.html | 2704 ++++++++++++++++++++
.../jdbc-driver.html => sql-reference/dml.html} | 234 +-
.../operators-and-functions.html} | 291 +--
docs/3.0.0-alpha/sql/calcite-based-sql-engine.html | 574 +----
docs/3.0.0-alpha/sql/jdbc-driver.html | 113 +-
.../{sql/jdbc-driver.html => table-views.html} | 276 +-
.../performing-transactions.html} | 234 +-
28 files changed, 6345 insertions(+), 954 deletions(-)
diff --git a/docs/3.0.0-alpha/binary-protocol.html b/docs/3.0.0-alpha/binary-protocol.html
index 75109b2..0d3f4d7 100644
--- a/docs/3.0.0-alpha/binary-protocol.html
+++ b/docs/3.0.0-alpha/binary-protocol.html
@@ -182,15 +182,100 @@
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine"
+ class=''
+ >Introduction</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" class='' >Calcite-Based SQL Engine</a>
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/jdbc-driver"
+ class=''
+ >JDBC Driver</a>
+
+ </li>
+
+
+
+ </nav>
</li>
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/ddl"
+ class=''
+ >Data Definition Language (DDL)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/dml"
+ class=''
+ >Data Manipulation Language (DML)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/operators-and-functions"
+ class=''
+ >Supported Operators and Functions</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/jdbc-driver" class='' >JDBC Driver</a>
+
+
+ </nav>
</li>
@@ -215,6 +300,20 @@
</li>
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/transactions/performing-transactions" class='' >Performing Transactions</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/table-views" class='' >Table Views</a>
+
+ </li>
+
</nav>
<div class="left-nav__overlay"></div>
@@ -248,7 +347,7 @@ An application can connect to the cluster through a raw TCP socket. Once the con
<p>For more information on binary client protocol, please click <a href="https://cwiki.apache.org/confluence/display/IGNITE/IEP-76+Thin+Client+Protocol+for+Ignite+3.0" target="_blank" rel="noopener">here</a>.</p>
</div>
<div class="copyright">
- © 2021 The Apache Software Foundation.<br/>
+ © 2022 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
</div>
@@ -295,11 +394,11 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
debug: false,
});
</script>
-<script type='module' src='/assets/js/index.js?1639728292' async crossorigin></script>
-<script type='module' src='/assets/js/versioning.js?1639728292' async crossorigin></script>
+<script type='module' src='/assets/js/index.js?1643403254' async crossorigin></script>
+<script type='module' src='/assets/js/versioning.js?1643403254' async crossorigin></script>
-<link rel="stylesheet" href="/assets/css/styles.css?1639728292" media="print" onload="this.media='all'">
-<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1639728292"></noscript>
+<link rel="stylesheet" href="/assets/css/styles.css?1643403254" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1643403254"></noscript>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" media="print" onload="this.media='all'">
<noscript><link media="all" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css"></noscript>
diff --git a/docs/3.0.0-alpha/ignite-cli-tool.html b/docs/3.0.0-alpha/ignite-cli-tool.html
index c2018f6..d046eb3 100644
--- a/docs/3.0.0-alpha/ignite-cli-tool.html
+++ b/docs/3.0.0-alpha/ignite-cli-tool.html
@@ -182,15 +182,100 @@
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine"
+ class=''
+ >Introduction</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" class='' >Calcite-Based SQL Engine</a>
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/jdbc-driver"
+ class=''
+ >JDBC Driver</a>
+
+ </li>
+
+
+
+ </nav>
</li>
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/ddl"
+ class=''
+ >Data Definition Language (DDL)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/dml"
+ class=''
+ >Data Manipulation Language (DML)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/operators-and-functions"
+ class=''
+ >Supported Operators and Functions</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/jdbc-driver" class='' >JDBC Driver</a>
+
+
+ </nav>
</li>
@@ -215,6 +300,20 @@
</li>
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/transactions/performing-transactions" class='' >Performing Transactions</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/table-views" class='' >Table Views</a>
+
+ </li>
+
</nav>
<div class="left-nav__overlay"></div>
@@ -303,7 +402,7 @@ allowing you to configure the node.</p>
</div>
</div>
<div class="copyright">
- © 2021 The Apache Software Foundation.<br/>
+ © 2022 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
</div>
@@ -352,11 +451,11 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
debug: false,
});
</script>
-<script type='module' src='/assets/js/index.js?1639728292' async crossorigin></script>
-<script type='module' src='/assets/js/versioning.js?1639728292' async crossorigin></script>
+<script type='module' src='/assets/js/index.js?1643403254' async crossorigin></script>
+<script type='module' src='/assets/js/versioning.js?1643403254' async crossorigin></script>
-<link rel="stylesheet" href="/assets/css/styles.css?1639728292" media="print" onload="this.media='all'">
-<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1639728292"></noscript>
+<link rel="stylesheet" href="/assets/css/styles.css?1643403254" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1643403254"></noscript>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" media="print" onload="this.media='all'">
<noscript><link media="all" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css"></noscript>
diff --git a/docs/3.0.0-alpha/images/svg/alter_table_column_no_bnf1.svg b/docs/3.0.0-alpha/images/svg/alter_table_column_no_bnf1.svg
new file mode 100644
index 0000000..cca6ebe
--- /dev/null
+++ b/docs/3.0.0-alpha/images/svg/alter_table_column_no_bnf1.svg
@@ -0,0 +1,124 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<svg class="railroad-diagram" width="625.5" height="82" viewBox="0 0 625.5 82" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 21v20m10 -20v20m-10 -10h20"></path>
+ </g>
+ <path d="M40 31h10"></path>
+ <g>
+ <path d="M50 31h0"></path>
+ <path d="M575.5 31h0"></path>
+ <g class="terminal ">
+ <path d="M50 31h0"></path>
+ <path d="M163.5 31h0"></path>
+ <rect x="50" y="20" width="113.5" height="22" rx="10" ry="10"></rect>
+ <text x="106.75" y="35">ALTER TABLE</text>
+ </g>
+ <path d="M163.5 31h10"></path>
+ <g>
+ <path d="M173.5 31h0"></path>
+ <path d="M310 31h0"></path>
+ <path d="M173.5 31h20"></path>
+ <g>
+ <path d="M193.5 31h96.5"></path>
+ </g>
+ <path d="M290 31h20"></path>
+ <path d="M173.5 31a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M193.5 51h0"></path>
+ <path d="M290 51h0"></path>
+ <rect x="193.5" y="40" width="96.5" height="22" rx="10" ry="10"></rect>
+ <text x="241.75" y="55">IF EXISTS</text>
+ </g>
+ <path d="M290 51a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M310 31h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#qualified_table_name">
+ <g class="non-terminal ">
+ <path d="M320 40h0"></path>
+ <path d="M510 40h0"></path>
+ <rect x="320" y="29" width="190" height="22"></rect>
+ <text x="415" y="44" fill="blue">qualified_table_name</text>
+ </g>
+ </a>
+ <path d="M510 31h10"></path>
+ <path d="M520 31h10"></path>
+ <g>
+ <path d="M530 31h0"></path>
+ <path d="M575.5 31h0"></path>
+ <g class="terminal ">
+ <path d="M530 31h0"></path>
+ <path d="M575.5 31h0"></path>
+ <rect x="530" y="20" width="45.5" height="22" rx="10" ry="10"></rect>
+ <text x="552.75" y="35">ADD</text>
+ </g>
+ </g>
+ </g>
+ <g fill="none" stroke="black" stroke-width="2">
+ <path stroke-dasharray="5,5" d="M581 32 l30 0" />
+ </g>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
\ No newline at end of file
diff --git a/docs/3.0.0-alpha/images/svg/alter_table_column_no_bnf2.svg b/docs/3.0.0-alpha/images/svg/alter_table_column_no_bnf2.svg
new file mode 100644
index 0000000..9f03132
--- /dev/null
+++ b/docs/3.0.0-alpha/images/svg/alter_table_column_no_bnf2.svg
@@ -0,0 +1,143 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<svg class="railroad-diagram" width="702.5" height="91" viewBox="0 0 702.5 91" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g fill="none" stroke="black" stroke-width="2">
+ <path stroke-dasharray="5,5" d="M11 40 l30 0" />
+ </g>
+ <path d="M40 40h10"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M652.5 40h0"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M574 40h0"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M161 40h0"></path>
+ <path d="M50 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M70 20h71"></path>
+ </g>
+ <path d="M141 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M50 40h20"></path>
+ <g class="terminal ">
+ <path d="M70 40h0"></path>
+ <path d="M141 40h0"></path>
+ <rect x="70" y="29" width="71" height="22" rx="10" ry="10"></rect>
+ <text x="105.5" y="44">COLUMN</text>
+ </g>
+ <path d="M141 40h20"></path>
+ </g>
+ <g>
+ <path d="M161 40h0"></path>
+ <path d="M331.5 40h0"></path>
+ <path d="M161 40h20"></path>
+ <g>
+ <path d="M181 40h130.5"></path>
+ </g>
+ <path d="M311.5 40h20"></path>
+ <path d="M161 40a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M181 60h0"></path>
+ <path d="M311.5 60h0"></path>
+ <rect x="181" y="49" width="130.5" height="22" rx="10" ry="10"></rect>
+ <text x="246.25" y="64">IF NOT EXISTS</text>
+ </g>
+ <path d="M311.5 60a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M331.5 40h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#column_definition_or_list">
+ <g class="non-terminal ">
+ <path d="M341.5 40h0"></path>
+ <path d="M574 40h0"></path>
+ <rect x="341.5" y="29" width="232.5" height="22"></rect>
+ <text x="457.75" y="44" fill="blue">column_definition_or_list</text>
+ </g>
+ </a>
+ </g>
+ <path d="M574 40h10"></path>
+ <g>
+ <path d="M584 40h0"></path>
+ <path d="M652.5 40h0"></path>
+ <path d="M584 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M604 20h28.5"></path>
+ </g>
+ <path d="M632.5 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M584 40h20"></path>
+ <g class="terminal ">
+ <path d="M604 40h0"></path>
+ <path d="M632.5 40h0"></path>
+ <rect x="604" y="29" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="618.25" y="44">;</text>
+ </g>
+ <path d="M632.5 40h20"></path>
+ </g>
+ </g>
+ <path d="M652.5 40h10"></path>
+ <path d="M 662.5 40 h 20 m -10 -10 v 20 m 10 -20 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: ;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
diff --git a/docs/3.0.0-alpha/images/svg/alter_table_column_yes_bnf1.svg b/docs/3.0.0-alpha/images/svg/alter_table_column_yes_bnf1.svg
new file mode 100644
index 0000000..17d477b
--- /dev/null
+++ b/docs/3.0.0-alpha/images/svg/alter_table_column_yes_bnf1.svg
@@ -0,0 +1,124 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<svg class="railroad-diagram" width="634" height="82" viewBox="0 0 634 82" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 21v20m10 -20v20m-10 -10h20"></path>
+ </g>
+ <path d="M40 31h10"></path>
+ <g>
+ <path d="M50 31h0"></path>
+ <path d="M584 31h0"></path>
+ <g class="terminal ">
+ <path d="M50 31h0"></path>
+ <path d="M163.5 31h0"></path>
+ <rect x="50" y="20" width="113.5" height="22" rx="10" ry="10"></rect>
+ <text x="106.75" y="35">ALTER TABLE</text>
+ </g>
+ <path d="M163.5 31h10"></path>
+ <g>
+ <path d="M173.5 31h0"></path>
+ <path d="M310 31h0"></path>
+ <path d="M173.5 31h20"></path>
+ <g>
+ <path d="M193.5 31h96.5"></path>
+ </g>
+ <path d="M290 31h20"></path>
+ <path d="M173.5 31a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M193.5 51h0"></path>
+ <path d="M290 51h0"></path>
+ <rect x="193.5" y="40" width="96.5" height="22" rx="10" ry="10"></rect>
+ <text x="241.75" y="55">IF EXISTS</text>
+ </g>
+ <path d="M290 51a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M310 31h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#qualified_table_name">
+ <g class="non-terminal ">
+ <path d="M320 40h0"></path>
+ <path d="M510 40h0"></path>
+ <rect x="320" y="29" width="190" height="22"></rect>
+ <text x="415" y="44" fill="blue">qualified_table_name</text>
+ </g>
+ </a>
+ <path d="M510 31h10"></path>
+ <path d="M520 31h10"></path>
+ <g>
+ <path d="M530 31h0"></path>
+ <path d="M584 31h0"></path>
+ <g class="terminal ">
+ <path d="M530 31h0"></path>
+ <path d="M584 31h0"></path>
+ <rect x="530" y="20" width="54" height="22" rx="10" ry="10"></rect>
+ <text x="557" y="35">DROP</text>
+ </g>
+ </g>
+ </g>
+ <g fill="none" stroke="black" stroke-width="2">
+ <path stroke-dasharray="5,5" d="M588 32 l30 0" />
+ </g>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
diff --git a/docs/3.0.0-alpha/images/svg/alter_table_column_yes_bnf2.svg b/docs/3.0.0-alpha/images/svg/alter_table_column_yes_bnf2.svg
new file mode 100644
index 0000000..ac4641a
--- /dev/null
+++ b/docs/3.0.0-alpha/images/svg/alter_table_column_yes_bnf2.svg
@@ -0,0 +1,143 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<svg class="railroad-diagram" width="549.5" height="91" viewBox="0 0 549.5 91" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g fill="none" stroke="black" stroke-width="2">
+ <path stroke-dasharray="5,5" d="M10 40 l30 0" />
+ </g>
+ <path d="M40 40h10"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M499.5 40h0"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M421 40h0"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M161 40h0"></path>
+ <path d="M50 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M70 20h71"></path>
+ </g>
+ <path d="M141 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M50 40h20"></path>
+ <g class="terminal ">
+ <path d="M70 40h0"></path>
+ <path d="M141 40h0"></path>
+ <rect x="70" y="29" width="71" height="22" rx="10" ry="10"></rect>
+ <text x="105.5" y="44">COLUMN</text>
+ </g>
+ <path d="M141 40h20"></path>
+ </g>
+ <g>
+ <path d="M161 40h0"></path>
+ <path d="M297.5 40h0"></path>
+ <path d="M161 40h20"></path>
+ <g>
+ <path d="M181 40h96.5"></path>
+ </g>
+ <path d="M277.5 40h20"></path>
+ <path d="M161 40a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M181 60h0"></path>
+ <path d="M277.5 60h0"></path>
+ <rect x="181" y="49" width="96.5" height="22" rx="10" ry="10"></rect>
+ <text x="229.25" y="64">IF EXISTS</text>
+ </g>
+ <path d="M277.5 60a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M297.5 40h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#column_list">
+ <g class="non-terminal ">
+ <path d="M307.5 40h0"></path>
+ <path d="M421 40h0"></path>
+ <rect x="307.5" y="29" width="113.5" height="22"></rect>
+ <text x="364.25" y="44" fill="blue">column_list</text>
+ </g>
+ </a>
+ </g>
+ <path d="M421 40h10"></path>
+ <g>
+ <path d="M431 40h0"></path>
+ <path d="M499.5 40h0"></path>
+ <path d="M431 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M451 20h28.5"></path>
+ </g>
+ <path d="M479.5 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M431 40h20"></path>
+ <g class="terminal ">
+ <path d="M451 40h0"></path>
+ <path d="M479.5 40h0"></path>
+ <rect x="451" y="29" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="465.25" y="44">;</text>
+ </g>
+ <path d="M479.5 40h20"></path>
+ </g>
+ </g>
+ <path d="M499.5 40h10"></path>
+ <path d="M 509.5 40 h 20 m -10 -10 v 20 m 10 -20 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
diff --git a/docs/3.0.0-alpha/images/svg/alter_table_logging_bnf.svg b/docs/3.0.0-alpha/images/svg/alter_table_logging_bnf.svg
new file mode 100644
index 0000000..8907bc2
--- /dev/null
+++ b/docs/3.0.0-alpha/images/svg/alter_table_logging_bnf.svg
@@ -0,0 +1,137 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<svg class="railroad-diagram" width="738" height="91" viewBox="0 0 738 91" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 30v20m10 -20v20m-10 -10h20"></path>
+ </g>
+ <path d="M40 40h10"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M688 40h0"></path>
+ <g class="terminal ">
+ <path d="M50 40h0"></path>
+ <path d="M163.5 40h0"></path>
+ <rect x="50" y="29" width="113.5" height="22" rx="10" ry="10"></rect>
+ <text x="106.75" y="44">ALTER TABLE</text>
+ </g>
+ <path d="M163.5 40h10"></path>
+ <g>
+ <path d="M173.5 40h0"></path>
+ <path d="M310 40h0"></path>
+ <path d="M173.5 40h20"></path>
+ <g>
+ <path d="M193.5 40h96.5"></path>
+ </g>
+ <path d="M290 40h20"></path>
+ <path d="M173.5 40a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M193.5 60h0"></path>
+ <path d="M290 60h0"></path>
+ <rect x="193.5" y="49" width="96.5" height="22" rx="10" ry="10"></rect>
+ <text x="241.75" y="64">IF EXISTS</text>
+ </g>
+ <path d="M290 60a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M310 40h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#qualified_table_name">
+ <g class="non-terminal ">
+ <path d="M320 40h0"></path>
+ <path d="M510 40h0"></path>
+ <rect x="320" y="29" width="190" height="22"></rect>
+ <text x="415" y="44" fill="blue">qualified_table_name</text>
+ </g>
+ </a>
+ <path d="M510 40h10"></path>
+ <path d="M520 40h10"></path>
+ <g class="terminal ">
+ <path d="M530 40h0"></path>
+ <path d="M609.5 40h0"></path>
+ <rect x="530" y="29" width="79.5" height="22" rx="10" ry="10"></rect>
+ <text x="569.75" y="44">LOGGING</text>
+ </g>
+ <path d="M609.5 40h10"></path>
+ <g>
+ <path d="M619.5 40h0"></path>
+ <path d="M688 40h0"></path>
+ <path d="M619.5 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M639.5 20h28.5"></path>
+ </g>
+ <path d="M668 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M619.5 40h20"></path>
+ <g class="terminal ">
+ <path d="M639.5 40h0"></path>
+ <path d="M668 40h0"></path>
+ <rect x="639.5" y="29" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="653.75" y="44">;</text>
+ </g>
+ <path d="M668 40h20"></path>
+ </g>
+ </g>
+ <path d="M688 40h10"></path>
+ <path d="M 698 40 h 20 m -10 -10 v 20 m 10 -20 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
\ No newline at end of file
diff --git a/docs/3.0.0-alpha/images/svg/alter_table_no_logging_bnf.svg b/docs/3.0.0-alpha/images/svg/alter_table_no_logging_bnf.svg
new file mode 100644
index 0000000..a53a2d5
--- /dev/null
+++ b/docs/3.0.0-alpha/images/svg/alter_table_no_logging_bnf.svg
@@ -0,0 +1,137 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<svg class="railroad-diagram" width="755" height="91" viewBox="0 0 755 91" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 30v20m10 -20v20m-10 -10h20"></path>
+ </g>
+ <path d="M40 40h10"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M705 40h0"></path>
+ <g class="terminal ">
+ <path d="M50 40h0"></path>
+ <path d="M163.5 40h0"></path>
+ <rect x="50" y="29" width="113.5" height="22" rx="10" ry="10"></rect>
+ <text x="106.75" y="44">ALTER TABLE</text>
+ </g>
+ <path d="M163.5 40h10"></path>
+ <g>
+ <path d="M173.5 40h0"></path>
+ <path d="M310 40h0"></path>
+ <path d="M173.5 40h20"></path>
+ <g>
+ <path d="M193.5 40h96.5"></path>
+ </g>
+ <path d="M290 40h20"></path>
+ <path d="M173.5 40a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M193.5 60h0"></path>
+ <path d="M290 60h0"></path>
+ <rect x="193.5" y="49" width="96.5" height="22" rx="10" ry="10"></rect>
+ <text x="241.75" y="64">IF EXISTS</text>
+ </g>
+ <path d="M290 60a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M310 40h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#qualified_table_name">
+ <g class="non-terminal ">
+ <path d="M320 40h0"></path>
+ <path d="M510 40h0"></path>
+ <rect x="320" y="29" width="190" height="22"></rect>
+ <text x="415" y="44" fill="blue">qualified_table_name</text>
+ </g>
+ </a>
+ <path d="M510 40h10"></path>
+ <path d="M520 40h10"></path>
+ <g class="terminal ">
+ <path d="M530 40h0"></path>
+ <path d="M626.5 40h0"></path>
+ <rect x="530" y="29" width="96.5" height="22" rx="10" ry="10"></rect>
+ <text x="578.25" y="44">NOLOGGING</text>
+ </g>
+ <path d="M626.5 40h10"></path>
+ <g>
+ <path d="M636.5 40h0"></path>
+ <path d="M705 40h0"></path>
+ <path d="M636.5 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M656.5 20h28.5"></path>
+ </g>
+ <path d="M685 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M636.5 40h20"></path>
+ <g class="terminal ">
+ <path d="M656.5 40h0"></path>
+ <path d="M685 40h0"></path>
+ <rect x="656.5" y="29" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="670.75" y="44">;</text>
+ </g>
+ <path d="M685 40h20"></path>
+ </g>
+ </g>
+ <path d="M705 40h10"></path>
+ <path d="M 715 40 h 20 m -10 -10 v 20 m 10 -20 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
diff --git a/docs/3.0.0-alpha/images/svg/column_definition_or_list_bnf.svg b/docs/3.0.0-alpha/images/svg/column_definition_or_list_bnf.svg
new file mode 100644
index 0000000..3654ada
--- /dev/null
+++ b/docs/3.0.0-alpha/images/svg/column_definition_or_list_bnf.svg
@@ -0,0 +1,156 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<svg class="railroad-diagram" width="527" height="133" viewBox="0 0 527 133" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 54v20m0 -10h20"></path>
+ </g>
+ <path d="M40 64h10"></path>
+ <g>
+ <path d="M50 64h0"></path>
+ <path d="M477 64h0"></path>
+ <rect x="50" y="36" width="427" height="77" rx="10" ry="10" class="group-box"></rect>
+ <g>
+ <path d="M50 64h10"></path>
+ <path d="M467 64h10"></path>
+ <g>
+ <path d="M60 64h0"></path>
+ <path d="M128.5 64h0"></path>
+ <path d="M60 64a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M80 44h28.5"></path>
+ </g>
+ <path d="M108.5 44a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M60 64h20"></path>
+ <g class="terminal ">
+ <path d="M80 64h0"></path>
+ <path d="M108.5 64h0"></path>
+ <rect x="80" y="53" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="94.25" y="68">(</text>
+ </g>
+ <path d="M108.5 64h20"></path>
+ </g>
+ <path d="M128.5 64h10"></path>
+ <g>
+ <path d="M138.5 64h0"></path>
+ <path d="M388.5 64h0"></path>
+ <path d="M138.5 64h10"></path>
+ <g>
+ <path d="M148.5 64h0"></path>
+ <path d="M378.5 64h0"></path>
+ <g class="non-terminal ">
+ <path d="M148.5 64h0"></path>
+ <path d="M262 64h0"></path>
+ <rect x="148.5" y="53" width="113.5" height="22"></rect>
+ <text x="205.25" y="68">column_name</text>
+ </g>
+ <path d="M262 64h10"></path>
+ <path d="M272 64h10"></path>
+ <g class="non-terminal ">
+ <path d="M282 64h0"></path>
+ <path d="M378.5 64h0"></path>
+ <rect x="282" y="53" width="96.5" height="22"></rect>
+ <text x="330.25" y="68">data_type</text>
+ </g>
+ </g>
+ <path d="M378.5 64h10"></path>
+ <path d="M148.5 64a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M148.5 94h100.75"></path>
+ <path d="M277.75 94h100.75"></path>
+ <rect x="249.25" y="83" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="263.5" y="98">,</text>
+ </g>
+ <path d="M378.5 94a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path>
+ </g>
+ <path d="M388.5 64h10"></path>
+ <g>
+ <path d="M398.5 64h0"></path>
+ <path d="M467 64h0"></path>
+ <path d="M398.5 64a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M418.5 44h28.5"></path>
+ </g>
+ <path d="M447 44a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M398.5 64h20"></path>
+ <g class="terminal ">
+ <path d="M418.5 64h0"></path>
+ <path d="M447 64h0"></path>
+ <rect x="418.5" y="53" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="432.75" y="68">)</text>
+ </g>
+ <path d="M447 64h20"></path>
+ </g>
+ </g>
+ <g class="comment ">
+ <path d="M50 28h0"></path>
+ <path d="M235 28h0"></path>
+ <text x="142.5" y="25" class="comment">column_definition_or_list</text>
+ </g>
+ </g>
+ <path d="M477 64h10"></path>
+ <path d="M 487 64 h 20 m 0 -10 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
\ No newline at end of file
diff --git a/docs/3.0.0-alpha/images/svg/column_list_bnf.svg b/docs/3.0.0-alpha/images/svg/column_list_bnf.svg
new file mode 100644
index 0000000..47460f2
--- /dev/null
+++ b/docs/3.0.0-alpha/images/svg/column_list_bnf.svg
@@ -0,0 +1,144 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<svg class="railroad-diagram" width="410.5" height="133" viewBox="0 0 410.5 133" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 54v20m0 -10h20"></path>
+ </g>
+ <path d="M40 64h10"></path>
+ <g>
+ <path d="M50 64h0"></path>
+ <path d="M360.5 64h0"></path>
+ <rect x="50" y="36" width="310.5" height="77" rx="10" ry="10" class="group-box"></rect>
+ <g>
+ <path d="M50 64h10"></path>
+ <path d="M350.5 64h10"></path>
+ <g>
+ <path d="M60 64h0"></path>
+ <path d="M128.5 64h0"></path>
+ <path d="M60 64a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M80 44h28.5"></path>
+ </g>
+ <path d="M108.5 44a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M60 64h20"></path>
+ <g class="terminal ">
+ <path d="M80 64h0"></path>
+ <path d="M108.5 64h0"></path>
+ <rect x="80" y="53" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="94.25" y="68">(</text>
+ </g>
+ <path d="M108.5 64h20"></path>
+ </g>
+ <path d="M128.5 64h10"></path>
+ <g>
+ <path d="M138.5 64h0"></path>
+ <path d="M272 64h0"></path>
+ <path d="M138.5 64h10"></path>
+ <g class="non-terminal ">
+ <path d="M148.5 64h0"></path>
+ <path d="M262 64h0"></path>
+ <rect x="148.5" y="53" width="113.5" height="22"></rect>
+ <text x="205.25" y="68">column_name</text>
+ </g>
+ <path d="M262 64h10"></path>
+ <path d="M148.5 64a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M148.5 94h42.5"></path>
+ <path d="M219.5 94h42.5"></path>
+ <rect x="191" y="83" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="205.25" y="98">,</text>
+ </g>
+ <path d="M262 94a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path>
+ </g>
+ <path d="M272 64h10"></path>
+ <g>
+ <path d="M282 64h0"></path>
+ <path d="M350.5 64h0"></path>
+ <path d="M282 64a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M302 44h28.5"></path>
+ </g>
+ <path d="M330.5 44a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M282 64h20"></path>
+ <g class="terminal ">
+ <path d="M302 64h0"></path>
+ <path d="M330.5 64h0"></path>
+ <rect x="302" y="53" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="316.25" y="68">)</text>
+ </g>
+ <path d="M330.5 64h20"></path>
+ </g>
+ </g>
+ <g class="comment ">
+ <path d="M50 28h0"></path>
+ <path d="M137 28h0"></path>
+ <text x="93.5" y="25" class="comment">column_list</text>
+ </g>
+ </g>
+ <path d="M360.5 64h10"></path>
+ <path d="M 370.5 64 h 20 m 0 -10 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
diff --git a/docs/3.0.0-alpha/images/svg/columns_definition_bnf.svg b/docs/3.0.0-alpha/images/svg/columns_definition_bnf.svg
new file mode 100644
index 0000000..13d5e69
--- /dev/null
+++ b/docs/3.0.0-alpha/images/svg/columns_definition_bnf.svg
@@ -0,0 +1,188 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<svg class="railroad-diagram" width="912" height="111" viewBox="0 0 912 111" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 62v20m0 -10h20"></path>
+ </g>
+ <path d="M40 72h10"></path>
+ <g>
+ <path d="M50 72h0"></path>
+ <path d="M862 72h0"></path>
+ <rect x="50" y="36" width="812" height="55" rx="10" ry="10" class="group-box"></rect>
+ <g>
+ <path d="M50 72h10"></path>
+ <path d="M852 72h10"></path>
+ <g class="non-terminal ">
+ <path d="M60 72h0"></path>
+ <path d="M168 72h0"></path>
+ <rect x="60" y="61" width="108" height="22"></rect>
+ <text x="114" y="76">column_name</text>
+ </g>
+ <path d="M168 72h10"></path>
+ <path d="M178 72h10"></path>
+ <g class="terminal ">
+ <path d="M188 72h0"></path>
+ <path d="M280 72h0"></path>
+ <rect x="188" y="61" width="92" height="22" rx="10" ry="10"></rect>
+ <text x="234" y="76">DATA TYPE</text>
+ </g>
+ <path d="M280 72h10"></path>
+ <g>
+ <path d="M290 72h0"></path>
+ <path d="M476 72h0"></path>
+ <path d="M290 72a10 10 0 0 0 10 -10v-8a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M310 44h146"></path>
+ </g>
+ <path d="M456 44a10 10 0 0 1 10 10v8a10 10 0 0 0 10 10"></path>
+ <path d="M290 72h20"></path>
+ <g>
+ <path d="M310 72h0"></path>
+ <path d="M456 72h0"></path>
+ <g>
+ <path d="M310 72h0"></path>
+ <path d="M394 72h0"></path>
+ <path d="M310 72a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M330 52h44"></path>
+ </g>
+ <path d="M374 52a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M310 72h20"></path>
+ <g class="terminal ">
+ <path d="M330 72h0"></path>
+ <path d="M374 72h0"></path>
+ <rect x="330" y="61" width="44" height="22" rx="10" ry="10"></rect>
+ <text x="352" y="76">NOT</text>
+ </g>
+ <path d="M374 72h20"></path>
+ </g>
+ <path d="M394 72h10"></path>
+ <g class="terminal ">
+ <path d="M404 72h0"></path>
+ <path d="M456 72h0"></path>
+ <rect x="404" y="61" width="52" height="22" rx="10" ry="10"></rect>
+ <text x="430" y="76">NULL</text>
+ </g>
+ </g>
+ <path d="M456 72h20"></path>
+ </g>
+ <g>
+ <path d="M476 72h0"></path>
+ <path d="M736 72h0"></path>
+ <path d="M476 72a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M496 52h220"></path>
+ </g>
+ <path d="M716 52a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M476 72h20"></path>
+ <g>
+ <path d="M496 72h0"></path>
+ <path d="M716 72h0"></path>
+ <g class="terminal ">
+ <path d="M496 72h0"></path>
+ <path d="M572 72h0"></path>
+ <rect x="496" y="61" width="76" height="22" rx="10" ry="10"></rect>
+ <text x="534" y="76">DEFAULT</text>
+ </g>
+ <path d="M572 72h10"></path>
+ <path d="M582 72h10"></path>
+ <g class="non-terminal ">
+ <path d="M592 72h0"></path>
+ <path d="M716 72h0"></path>
+ <rect x="592" y="61" width="124" height="22"></rect>
+ <text x="654" y="76">literal_value</text>
+ </g>
+ </g>
+ <path d="M716 72h20"></path>
+ </g>
+ <g>
+ <path d="M736 72h0"></path>
+ <path d="M852 72h0"></path>
+ <path d="M736 72a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M756 52h76"></path>
+ </g>
+ <path d="M832 52a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M736 72h20"></path>
+ <g class="terminal ">
+ <path d="M756 72h0"></path>
+ <path d="M832 72h0"></path>
+ <rect x="756" y="61" width="76" height="22" rx="10" ry="10"></rect>
+ <text x="794" y="76">PRIMARY</text>
+ </g>
+ <path d="M832 72h20"></path>
+ </g>
+ </g>
+ <g class="comment ">
+ <path d="M50 28h0"></path>
+ <path d="M179 28h0"></path>
+ <text x="114.5" y="25" class="comment">column_definition</text>
+ </g>
+ </g>
+ <path d="M862 72h10"></path>
+ <path d="M 872 72 h 20 m 0 -10 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
diff --git a/docs/3.0.0-alpha/images/svg/create_table_bnf1.svg b/docs/3.0.0-alpha/images/svg/create_table_bnf1.svg
new file mode 100644
index 0000000..ae217f2
--- /dev/null
+++ b/docs/3.0.0-alpha/images/svg/create_table_bnf1.svg
@@ -0,0 +1,120 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<svg class="railroad-diagram" width="549" height="71" viewBox="0 0 549 71" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 30v20m10 -20v20m-10 -10h20"></path>
+ </g>
+ <path d="M40 40h10"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M499 40h0"></path>
+ <g class="terminal ">
+ <path d="M50 40h0"></path>
+ <path d="M121 40h0"></path>
+ <rect x="50" y="29" width="71" height="22" rx="10" ry="10"></rect>
+ <text x="85.5" y="44">CREATE</text>
+ </g>
+ <path d="M121 40h10"></path>
+ <path d="M131 40h10"></path>
+ <g class="terminal ">
+ <path d="M141 40h0"></path>
+ <path d="M203.5 40h0"></path>
+ <rect x="141" y="29" width="62.5" height="22" rx="10" ry="10"></rect>
+ <text x="172.25" y="44">TABLE</text>
+ </g>
+ <path d="M203.5 40h10"></path>
+ <g>
+ <path d="M213.5 40h0"></path>
+ <path d="M384 40h0"></path>
+ <path d="M213.5 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M233.5 20h130.5"></path>
+ </g>
+ <path d="M364 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M213.5 40h20"></path>
+ <g class="terminal ">
+ <path d="M233.5 40h0"></path>
+ <path d="M364 40h0"></path>
+ <rect x="233.5" y="29" width="130.5" height="22" rx="10" ry="10"></rect>
+ <text x="298.75" y="44">IF NOT EXISTS</text>
+ </g>
+ <path d="M364 40h20"></path>
+ </g>
+ <path d="M384 40h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#qualified_table_name">
+ <g class="non-terminal ">
+ <path d="M394 40h0"></path>
+ <path d="M499 40h0"></path>
+ <rect x="394" y="29" width="105" height="22"></rect>
+ <text x="446.5" y="44" fill="blue">table_name</text>
+ </g>
+ </a>
+ </g>
+ <g fill="none" stroke="black" stroke-width="2">
+ <path stroke-dasharray="5,5" d="M505 40 l30 0" />
+ </g>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
diff --git a/docs/3.0.0-alpha/images/svg/create_table_bnf2.svg b/docs/3.0.0-alpha/images/svg/create_table_bnf2.svg
new file mode 100644
index 0000000..1766835
--- /dev/null
+++ b/docs/3.0.0-alpha/images/svg/create_table_bnf2.svg
@@ -0,0 +1,196 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<svg class="railroad-diagram" width="861" height="122" viewBox="0 0 861 122" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g fill="none" stroke="black" stroke-width="2">
+ <path stroke-dasharray="5,5" d="M10 61 l30 0" />
+ </g>
+ <path d="M40 61h10"></path>
+ <g>
+ <path d="M50 61h0"></path>
+ <path d="M811 61h0"></path>
+ <g class="terminal ">
+ <path d="M50 61h0"></path>
+ <path d="M78.5 61h0"></path>
+ <rect x="50" y="50" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="64.25" y="65">(</text>
+ </g>
+ <path d="M78.5 61h10"></path>
+ <path d="M88.5 61h10"></path>
+ <g>
+ <path d="M98.5 61h0"></path>
+ <path d="M331.5 61h0"></path>
+ <path d="M98.5 61h10"></path>
+ <g>
+ <path d="M108.5 61h0"></path>
+ <path d="M321.5 61h0"></path>
+ <path d="M108.5 61a10 10 0 0 0 10 -10v-10a10 10 0 0 1 10 -10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#constraint">
+ <g class="non-terminal ">
+ <path d="M128.5 31h21.25"></path>
+ <path d="M280.25 31h21.25"></path>
+ <rect x="149.75" y="20" width="130.5" height="22"></rect>
+ <text x="215" y="35" fill="blue">constraint</text>
+ </g>
+ </a>
+ <path d="M301.5 31a10 10 0 0 1 10 10v10a10 10 0 0 0 10 10"></path>
+ <path d="M108.5 61h20"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#column_definition">
+ <g class="non-terminal ">
+ <path d="M128.5 61h0"></path>
+ <path d="M301.5 61h0"></path>
+ <rect x="128.5" y="50" width="173" height="22"></rect>
+ <text x="215" y="65" fill="blue">column_definition</text>
+ </g>
+ </a>
+ <path d="M301.5 61h20"></path>
+ </g>
+ <path d="M321.5 61h10"></path>
+ <path d="M108.5 61a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M108.5 91h92.25"></path>
+ <path d="M229.25 91h92.25"></path>
+ <rect x="200.75" y="80" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="215" y="95">,</text>
+ </g>
+ <path d="M321.5 91a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path>
+ </g>
+ <path d="M331.5 61h10"></path>
+ <path d="M341.5 61h10"></path>
+ <g class="terminal ">
+ <path d="M351.5 61h0"></path>
+ <path d="M380 61h0"></path>
+ <rect x="351.5" y="50" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="365.75" y="65">)</text>
+ </g>
+ <path d="M380 61h10"></path>
+ <g>
+ <path d="M390 61h0"></path>
+ <path d="M811 61h0"></path>
+ <path d="M390 61a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M410 41h381"></path>
+ </g>
+ <path d="M791 41a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M390 61h20"></path>
+ <g>
+ <path d="M410 61h0"></path>
+ <path d="M791 61h0"></path>
+ <g class="terminal ">
+ <path d="M410 61h0"></path>
+ <path d="M464 61h0"></path>
+ <rect x="410" y="50" width="54" height="22" rx="10" ry="10"></rect>
+ <text x="437" y="65">WITH</text>
+ </g>
+ <path d="M464 61h10"></path>
+ <path d="M474 61h10"></path>
+ <g>
+ <path d="M484 61h0"></path>
+ <path d="M791 61h0"></path>
+ <path d="M484 61h10"></path>
+ <g>
+ <path d="M494 61h0"></path>
+ <path d="M781 61h0"></path>
+ <g class="non-terminal ">
+ <path d="M494 61h0"></path>
+ <path d="M599 61h0"></path>
+ <rect x="494" y="50" width="105" height="22"></rect>
+ <text x="546.5" y="65">param_name</text>
+ </g>
+ <path d="M599 61h10"></path>
+ <path d="M609 61h10"></path>
+ <g class="terminal ">
+ <path d="M619 61h0"></path>
+ <path d="M647.5 61h0"></path>
+ <rect x="619" y="50" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="633.25" y="65">=</text>
+ </g>
+ <path d="M647.5 61h10"></path>
+ <path d="M657.5 61h10"></path>
+ <g class="non-terminal ">
+ <path d="M667.5 61h0"></path>
+ <path d="M781 61h0"></path>
+ <rect x="667.5" y="50" width="113.5" height="22"></rect>
+ <text x="724.25" y="65">param_value</text>
+ </g>
+ </g>
+ <path d="M781 61h10"></path>
+ <path d="M494 61a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M494 91h129.25"></path>
+ <path d="M651.75 91h129.25"></path>
+ <rect x="623.25" y="80" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="637.5" y="95">,</text>
+ </g>
+ <path d="M781 91a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path>
+ </g>
+ </g>
+ <path d="M791 61h20"></path>
+ </g>
+ </g>
+ <path d="M811 61h10"></path>
+ <path d="M 821 61 h 20 m -10 -10 v 20 m 10 -20 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
diff --git a/docs/3.0.0-alpha/images/svg/drop_table_bnf.svg b/docs/3.0.0-alpha/images/svg/drop_table_bnf.svg
new file mode 100644
index 0000000..de5ec60
--- /dev/null
+++ b/docs/3.0.0-alpha/images/svg/drop_table_bnf.svg
@@ -0,0 +1,129 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<svg class="railroad-diagram" width="630" height="91" viewBox="0 0 630 91" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 30v20m10 -20v20m-10 -10h20"></path>
+ </g>
+ <path d="M40 40h10"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M580 40h0"></path>
+ <g class="terminal ">
+ <path d="M50 40h0"></path>
+ <path d="M155 40h0"></path>
+ <rect x="50" y="29" width="105" height="22" rx="10" ry="10"></rect>
+ <text x="102.5" y="44">DROP TABLE</text>
+ </g>
+ <path d="M155 40h10"></path>
+ <g>
+ <path d="M165 40h0"></path>
+ <path d="M301.5 40h0"></path>
+ <path d="M165 40h20"></path>
+ <g>
+ <path d="M185 40h96.5"></path>
+ </g>
+ <path d="M281.5 40h20"></path>
+ <path d="M165 40a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M185 60h0"></path>
+ <path d="M281.5 60h0"></path>
+ <rect x="185" y="49" width="96.5" height="22" rx="10" ry="10"></rect>
+ <text x="233.25" y="64">IF EXISTS</text>
+ </g>
+ <path d="M281.5 60a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M301.5 40h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#qualified_table_name">
+ <g class="non-terminal ">
+ <path d="M311.5 40h0"></path>
+ <path d="M501.5 40h0"></path>
+ <rect x="311.5" y="29" width="190" height="22"></rect>
+ <text x="406.5" y="44" fill="blue">qualified_table_name</text>
+ </g>
+ </a>
+ <path d="M501.5 40h10"></path>
+ <g>
+ <path d="M511.5 40h0"></path>
+ <path d="M580 40h0"></path>
+ <path d="M511.5 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M531.5 20h28.5"></path>
+ </g>
+ <path d="M560 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M511.5 40h20"></path>
+ <g class="terminal ">
+ <path d="M531.5 40h0"></path>
+ <path d="M560 40h0"></path>
+ <rect x="531.5" y="29" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="545.75" y="44">;</text>
+ </g>
+ <path d="M560 40h20"></path>
+ </g>
+ </g>
+ <path d="M580 40h10"></path>
+ <path d="M 590 40 h 20 m -10 -10 v 20 m 10 -20 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
diff --git a/docs/3.0.0-alpha/images/svg/pk_constraint_bnf.svg b/docs/3.0.0-alpha/images/svg/pk_constraint_bnf.svg
new file mode 100644
index 0000000..cb13482
--- /dev/null
+++ b/docs/3.0.0-alpha/images/svg/pk_constraint_bnf.svg
@@ -0,0 +1,162 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<svg class="railroad-diagram" width="782" height="133" viewBox="0 0 782 133" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 54v20m0 -10h20"></path>
+ </g>
+ <path d="M40 64h10"></path>
+ <g>
+ <path d="M50 64h0"></path>
+ <path d="M732 64h0"></path>
+ <rect x="50" y="36" width="682" height="77" rx="10" ry="10" class="group-box"></rect>
+ <g>
+ <path d="M50 64h10"></path>
+ <path d="M722 64h10"></path>
+ <g>
+ <path d="M60 64h0"></path>
+ <path d="M360 64h0"></path>
+ <path d="M60 64a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M80 44h260"></path>
+ </g>
+ <path d="M340 44a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M60 64h20"></path>
+ <g>
+ <path d="M80 64h0"></path>
+ <path d="M340 64h0"></path>
+ <g class="terminal ">
+ <path d="M80 64h0"></path>
+ <path d="M180 64h0"></path>
+ <rect x="80" y="53" width="100" height="22" rx="10" ry="10"></rect>
+ <text x="130" y="68">CONSTRAINT</text>
+ </g>
+ <path d="M180 64h10"></path>
+ <path d="M190 64h10"></path>
+ <g class="non-terminal ">
+ <path d="M200 64h0"></path>
+ <path d="M340 64h0"></path>
+ <rect x="200" y="53" width="140" height="22"></rect>
+ <text x="270" y="68">constraint_name</text>
+ </g>
+ </g>
+ <path d="M340 64h20"></path>
+ </g>
+ <path d="M360 64h10"></path>
+ <g class="terminal ">
+ <path d="M370 64h0"></path>
+ <path d="M478 64h0"></path>
+ <rect x="370" y="53" width="108" height="22" rx="10" ry="10"></rect>
+ <text x="424" y="68">PRIMARY KEY</text>
+ </g>
+ <path d="M478 64h10"></path>
+ <path d="M488 64h10"></path>
+ <g class="terminal ">
+ <path d="M498 64h0"></path>
+ <path d="M526 64h0"></path>
+ <rect x="498" y="53" width="28" height="22" rx="10" ry="10"></rect>
+ <text x="512" y="68">(</text>
+ </g>
+ <path d="M526 64h10"></path>
+ <path d="M536 64h10"></path>
+ <g>
+ <path d="M546 64h0"></path>
+ <path d="M674 64h0"></path>
+ <path d="M546 64h10"></path>
+ <g class="non-terminal ">
+ <path d="M556 64h0"></path>
+ <path d="M664 64h0"></path>
+ <rect x="556" y="53" width="108" height="22"></rect>
+ <text x="610" y="68">column_name</text>
+ </g>
+ <path d="M664 64h10"></path>
+ <path d="M556 64a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M556 94h40"></path>
+ <path d="M624 94h40"></path>
+ <rect x="596" y="83" width="28" height="22" rx="10" ry="10"></rect>
+ <text x="610" y="98">,</text>
+ </g>
+ <path d="M664 94a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path>
+ </g>
+ <path d="M674 64h10"></path>
+ <path d="M684 64h10"></path>
+ <g class="terminal ">
+ <path d="M694 64h0"></path>
+ <path d="M722 64h0"></path>
+ <rect x="694" y="53" width="28" height="22" rx="10" ry="10"></rect>
+ <text x="708" y="68">)</text>
+ </g>
+ </g>
+ <g class="comment ">
+ <path d="M50 28h0"></path>
+ <path d="M130 28h0"></path>
+ <text x="90" y="25" class="comment">constraint</text>
+ </g>
+ </g>
+ <path d="M732 64h10"></path>
+ <path d="M 742 64 h 20 m 0 -10 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
diff --git a/docs/3.0.0-alpha/images/svg/qualified_table_name_bnf.svg b/docs/3.0.0-alpha/images/svg/qualified_table_name_bnf.svg
new file mode 100644
index 0000000..1595b4e
--- /dev/null
+++ b/docs/3.0.0-alpha/images/svg/qualified_table_name_bnf.svg
@@ -0,0 +1,124 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<svg class="railroad-diagram" width="394.5" height="114" viewBox="0 0 394.5 114" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 45v20m0 -10h20"></path>
+ </g>
+ <path d="M40 55h10"></path>
+ <g>
+ <path d="M50 55h0"></path>
+ <path d="M344.5 55h0"></path>
+ <rect x="50" y="36" width="294.5" height="58" rx="10" ry="10" class="group-box"></rect>
+ <g>
+ <path d="M50 55h10"></path>
+ <path d="M334.5 55h10"></path>
+ <g>
+ <path d="M60 55h0"></path>
+ <path d="M219.5 55h0"></path>
+ <path d="M60 55h20"></path>
+ <g>
+ <path d="M80 55h119.5"></path>
+ </g>
+ <path d="M199.5 55h20"></path>
+ <path d="M60 55a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g>
+ <path d="M80 75h0"></path>
+ <path d="M199.5 75h0"></path>
+ <g class="non-terminal ">
+ <path d="M80 75h0"></path>
+ <path d="M151 75h0"></path>
+ <rect x="80" y="64" width="71" height="22"></rect>
+ <text x="115.5" y="79">schema</text>
+ </g>
+ <path d="M151 75h10"></path>
+ <path d="M161 75h10"></path>
+ <g class="terminal ">
+ <path d="M171 75h0"></path>
+ <path d="M199.5 75h0"></path>
+ <rect x="171" y="64" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="185.25" y="79">.</text>
+ </g>
+ </g>
+ <path d="M199.5 75a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M219.5 55h10"></path>
+ <g class="non-terminal ">
+ <path d="M229.5 55h0"></path>
+ <path d="M334.5 55h0"></path>
+ <rect x="229.5" y="44" width="105" height="22"></rect>
+ <text x="282" y="59">table_name</text>
+ </g>
+ </g>
+ <g class="comment ">
+ <path d="M50 28h0"></path>
+ <path d="M200 28h0"></path>
+ <text x="125" y="25" class="comment">qualified_table_name</text>
+ </g>
+ </g>
+ <path d="M344.5 55h10"></path>
+ <path d="M 354.5 55 h 20 m 0 -10 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #ffa500;
+ }</style>
+</svg>
diff --git a/docs/3.0.0-alpha/index.html b/docs/3.0.0-alpha/index.html
index 7840359..4a0154c 100644
--- a/docs/3.0.0-alpha/index.html
+++ b/docs/3.0.0-alpha/index.html
@@ -182,15 +182,100 @@
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine"
+ class=''
+ >Introduction</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/jdbc-driver"
+ class=''
+ >JDBC Driver</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" class='' >Calcite-Based SQL Engine</a>
+
+
+ </nav>
</li>
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/ddl"
+ class=''
+ >Data Definition Language (DDL)</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/jdbc-driver" class='' >JDBC Driver</a>
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/dml"
+ class=''
+ >Data Manipulation Language (DML)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/operators-and-functions"
+ class=''
+ >Supported Operators and Functions</a>
+
+ </li>
+
+
+
+ </nav>
</li>
@@ -215,6 +300,20 @@
</li>
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/transactions/performing-transactions" class='' >Performing Transactions</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/table-views" class='' >Table Views</a>
+
+ </li>
+
</nav>
<div class="left-nav__overlay"></div>
@@ -285,31 +384,28 @@ possesses the highest level of usability thanks to the following improvements:</
</div>
</div>
<div class="sect1">
-<h2 id="new-in-alpha-3">New in Alpha 3</h2>
+<h2 id="new-in-alpha-4">New in Alpha 4</h2>
<div class="sectionbody">
<div class="paragraph">
-<p>Apache Ignite Alpha 3 comes with the following new features:</p>
+<p>Apache Ignite Alpha 4 comes with the following new features:</p>
</div>
<div class="ulist">
<ul>
<li>
-<p>New SQL engine based on Apache Calcite with implemented JDBC driver;</p>
-</li>
-<li>
-<p>Persistence implementation based on RocksDB;</p>
+<p>Transactions functionality;</p>
</li>
<li>
-<p>New binary client protocol with an implementation in Java;</p>
+<p>Data Definition Language (DDL) commands;</p>
</li>
<li>
-<p>Data rebalancing.</p>
+<p>Table views.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="copyright">
- © 2021 The Apache Software Foundation.<br/>
+ © 2022 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
</div>
@@ -318,7 +414,7 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
<nav class="right-nav" data-swiftype-index='false'>
<div class="toc-wrapper">
<ul class="sectlevel1">
-<li><a href="#new-in-alpha-3">New in Alpha 3</a></li>
+<li><a href="#new-in-alpha-4">New in Alpha 4</a></li>
</ul>
</div>
@@ -358,11 +454,11 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
debug: false,
});
</script>
-<script type='module' src='/assets/js/index.js?1639728292' async crossorigin></script>
-<script type='module' src='/assets/js/versioning.js?1639728292' async crossorigin></script>
+<script type='module' src='/assets/js/index.js?1643403254' async crossorigin></script>
+<script type='module' src='/assets/js/versioning.js?1643403254' async crossorigin></script>
-<link rel="stylesheet" href="/assets/css/styles.css?1639728292" media="print" onload="this.media='all'">
-<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1639728292"></noscript>
+<link rel="stylesheet" href="/assets/css/styles.css?1643403254" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1643403254"></noscript>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" media="print" onload="this.media='all'">
<noscript><link media="all" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css"></noscript>
diff --git a/docs/3.0.0-alpha/installation/installing-using-exe.html b/docs/3.0.0-alpha/installation/installing-using-exe.html
index aea4667..d982123 100644
--- a/docs/3.0.0-alpha/installation/installing-using-exe.html
+++ b/docs/3.0.0-alpha/installation/installing-using-exe.html
@@ -182,15 +182,100 @@
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine"
+ class=''
+ >Introduction</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" class='' >Calcite-Based SQL Engine</a>
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/jdbc-driver"
+ class=''
+ >JDBC Driver</a>
+
+ </li>
+
+
+
+ </nav>
</li>
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/ddl"
+ class=''
+ >Data Definition Language (DDL)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/dml"
+ class=''
+ >Data Manipulation Language (DML)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/operators-and-functions"
+ class=''
+ >Supported Operators and Functions</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/jdbc-driver" class='' >JDBC Driver</a>
+
+
+ </nav>
</li>
@@ -215,6 +300,20 @@
</li>
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/transactions/performing-transactions" class='' >Performing Transactions</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/table-views" class='' >Table Views</a>
+
+ </li>
+
</nav>
<div class="left-nav__overlay"></div>
@@ -294,7 +393,7 @@ To grant permissions for Linux, run the <code>chmod +x ignite</code> standard co
</div>
</div>
<div class="copyright">
- © 2021 The Apache Software Foundation.<br/>
+ © 2022 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
</div>
@@ -344,11 +443,11 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
debug: false,
});
</script>
-<script type='module' src='/assets/js/index.js?1639728293' async crossorigin></script>
-<script type='module' src='/assets/js/versioning.js?1639728293' async crossorigin></script>
+<script type='module' src='/assets/js/index.js?1643403254' async crossorigin></script>
+<script type='module' src='/assets/js/versioning.js?1643403254' async crossorigin></script>
-<link rel="stylesheet" href="/assets/css/styles.css?1639728293" media="print" onload="this.media='all'">
-<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1639728293"></noscript>
+<link rel="stylesheet" href="/assets/css/styles.css?1643403254" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1643403254"></noscript>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" media="print" onload="this.media='all'">
<noscript><link media="all" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css"></noscript>
diff --git a/docs/3.0.0-alpha/persistence.html b/docs/3.0.0-alpha/persistence.html
index 95a677a..9440775 100644
--- a/docs/3.0.0-alpha/persistence.html
+++ b/docs/3.0.0-alpha/persistence.html
@@ -182,15 +182,100 @@
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine"
+ class=''
+ >Introduction</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" class='' >Calcite-Based SQL Engine</a>
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/jdbc-driver"
+ class=''
+ >JDBC Driver</a>
+
+ </li>
+
+
+
+ </nav>
</li>
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/ddl"
+ class=''
+ >Data Definition Language (DDL)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/dml"
+ class=''
+ >Data Manipulation Language (DML)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/operators-and-functions"
+ class=''
+ >Supported Operators and Functions</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/jdbc-driver" class='' >JDBC Driver</a>
+
+
+ </nav>
</li>
@@ -215,6 +300,20 @@
</li>
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/transactions/performing-transactions" class='' >Performing Transactions</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/table-views" class='' >Table Views</a>
+
+ </li>
+
</nav>
<div class="left-nav__overlay"></div>
@@ -248,7 +347,7 @@ In this Apache Ignite Alpha release, persistence is enabled by default.
<p>The current Alpha release persistence functionality is based on <a href="https://github.com/facebook/rocksdb/wiki/RocksDB-Overview" target="_blank" rel="noopener">RocksDB</a>.</p>
</div>
<div class="copyright">
- © 2021 The Apache Software Foundation.<br/>
+ © 2022 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
</div>
@@ -295,11 +394,11 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
debug: false,
});
</script>
-<script type='module' src='/assets/js/index.js?1639728293' async crossorigin></script>
-<script type='module' src='/assets/js/versioning.js?1639728293' async crossorigin></script>
+<script type='module' src='/assets/js/index.js?1643403254' async crossorigin></script>
+<script type='module' src='/assets/js/versioning.js?1643403254' async crossorigin></script>
-<link rel="stylesheet" href="/assets/css/styles.css?1639728293" media="print" onload="this.media='all'">
-<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1639728293"></noscript>
+<link rel="stylesheet" href="/assets/css/styles.css?1643403254" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1643403254"></noscript>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" media="print" onload="this.media='all'">
<noscript><link media="all" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css"></noscript>
diff --git a/docs/3.0.0-alpha/quick-start/getting-started-guide.html b/docs/3.0.0-alpha/quick-start/getting-started-guide.html
index 0e3fec5..492f60e 100644
--- a/docs/3.0.0-alpha/quick-start/getting-started-guide.html
+++ b/docs/3.0.0-alpha/quick-start/getting-started-guide.html
@@ -182,15 +182,100 @@
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine"
+ class=''
+ >Introduction</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" class='' >Calcite-Based SQL Engine</a>
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/jdbc-driver"
+ class=''
+ >JDBC Driver</a>
+
+ </li>
+
+
+
+ </nav>
</li>
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/ddl"
+ class=''
+ >Data Definition Language (DDL)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/dml"
+ class=''
+ >Data Manipulation Language (DML)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/operators-and-functions"
+ class=''
+ >Supported Operators and Functions</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/jdbc-driver" class='' >JDBC Driver</a>
+
+
+ </nav>
</li>
@@ -215,6 +300,20 @@
</li>
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/transactions/performing-transactions" class='' >Performing Transactions</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/table-views" class='' >Table Views</a>
+
+ </li>
+
</nav>
<div class="left-nav__overlay"></div>
@@ -227,7 +326,7 @@
<div id="preamble">
<div class="sectionbody">
<div class="paragraph">
-<p>This guide provides essential details on how to start working with Ignite 3.0 alpha 3 by using the Ignite CLI tool, including the following information:</p>
+<p>This guide provides essential details on how to start working with Ignite 3.0 Alpha 4 by using the Ignite CLI tool, including the following information:</p>
</div>
<div class="ulist">
<ul>
@@ -251,7 +350,7 @@
<h2 id="prerequisites">Prerequisites</h2>
<div class="sectionbody">
<div class="paragraph">
-<p>Ignite 3.0 alpha 3 was officially tested on:</p>
+<p>Ignite 3.0 Alpha 4 was officially tested on:</p>
</div>
<table class="tableblock frame-all grid-all stripes-even stretch">
<colgroup>
@@ -283,15 +382,15 @@
<p>Download the archive with the Ignite CLI tool:</p>
<code-tabs><code-tab data-tab='Unix'><div class="listingblock">
<div class="content">
-<pre class="rouge highlight"><code data-lang="shell">curl <span class="nt">-L</span> <span class="s2">"https://www.apache.org/dyn/mirrors/mirrors.cgi?action=download&filename=ignite/3.0.0-alpha3/apache-ignite-3.0.0-alpha3.zip"</span> <span class="nt">-o</span> apache-ignite-3.0.0-alpha3.zip</code></pre>
+<pre class="rouge highlight"><code data-lang="shell">curl <span class="nt">-L</span> <span class="s2">"https://www.apache.org/dyn/mirrors/mirrors.cgi?action=download&filename=ignite/3.0.0-alpha4/apache-ignite-3.0.0-alpha4.zip"</span> <span class="nt">-o</span> apache-ignite-3.0.0-alpha4.zip</code></pre>
</div>
</div></code-tab><code-tab data-tab='Windows (PowerShell)'><div class="listingblock">
<div class="content">
-<pre class="rouge highlight"><code data-lang="shell">curl <span class="s2">"https://www.apache.org/dyn/mirrors/mirrors.cgi?action=download&filename=ignite/3.0.0-alpha3/apache-ignite-3.0.0-alpha3.zip"</span> <span class="nt">-o</span> apache-ignite-3.0.0-alpha3.zip</code></pre>
+<pre class="rouge highlight"><code data-lang="shell">curl <span class="s2">"https://www.apache.org/dyn/mirrors/mirrors.cgi?action=download&filename=ignite/3.0.0-alpha4/apache-ignite-3.0.0-alpha4.zip"</span> <span class="nt">-o</span> apache-ignite-3.0.0-alpha4.zip</code></pre>
</div>
</div></code-tab><code-tab data-tab='Windows (CMD)'><div class="listingblock">
<div class="content">
-<pre class="rouge highlight"><code data-lang="shell">curl <span class="s2">"https://www.apache.org/dyn/mirrors/mirrors.cgi?action=download&filename=ignite/3.0.0-alpha3/apache-ignite-3.0.0-alpha3.zip"</span> <span class="nt">-o</span> apache-ignite-3.0.0-alpha3.zip</code></pre>
+<pre class="rouge highlight"><code data-lang="shell">curl <span class="s2">"https://www.apache.org/dyn/mirrors/mirrors.cgi?action=download&filename=ignite/3.0.0-alpha4/apache-ignite-3.0.0-alpha4.zip"</span> <span class="nt">-o</span> apache-ignite-3.0.0-alpha4.zip</code></pre>
</div>
</div></code-tab></code-tabs>
</li>
@@ -299,15 +398,15 @@
<p>Unpack the archive:</p>
<code-tabs><code-tab data-tab='Unix'><div class="listingblock">
<div class="content">
-<pre class="rouge highlight"><code data-lang="shell">unzip apache-ignite-3.0.0-alpha3.zip <span class="o">&&</span> <span class="nb">cd </span>apache-ignite-3.0.0-alpha3</code></pre>
+<pre class="rouge highlight"><code data-lang="shell">unzip apache-ignite-3.0.0-alpha4.zip <span class="o">&&</span> <span class="nb">cd </span>apache-ignite-3.0.0-alpha4</code></pre>
</div>
</div></code-tab><code-tab data-tab='Windows (PowerShell)'><div class="listingblock">
<div class="content">
-<pre class="rouge highlight"><code data-lang="shell">Expand-Archive apache-ignite-3.0.0-alpha3.zip <span class="nt">-DestinationPath</span> <span class="nb">.</span> <span class="p">;</span> <span class="nb">cd </span>apache-ignite-3.0.0-alpha3</code></pre>
+<pre class="rouge highlight"><code data-lang="shell">Expand-Archive apache-ignite-3.0.0-alpha4.zip <span class="nt">-DestinationPath</span> <span class="nb">.</span> <span class="p">;</span> <span class="nb">cd </span>apache-ignite-3.0.0-alpha4</code></pre>
</div>
</div></code-tab><code-tab data-tab='Windows (CMD)'><div class="listingblock">
<div class="content">
-<pre class="rouge highlight"><code data-lang="shell"><span class="nb">tar</span> <span class="nt">-xf</span> apache-ignite-3.0.0-alpha3.zip & <span class="nb">cd </span>apache-ignite-3.0.0-alpha3</code></pre>
+<pre class="rouge highlight"><code data-lang="shell"><span class="nb">tar</span> <span class="nt">-xf</span> apache-ignite-3.0.0-alpha4.zip & <span class="nb">cd </span>apache-ignite-3.0.0-alpha4</code></pre>
</div>
</div></code-tab></code-tabs>
</li>
@@ -409,7 +508,7 @@ permanently update the <code>PATH</code> environment variable by adding a full p
<div class="olist arabic">
<ol class="arabic">
<li>
-<p>To start an Ignite 3.0 alpha 3 cluster, you need to install Ignite core artifacts first:</p>
+<p>To start an Ignite 3.0 Alpha 4 cluster, you need to install Ignite core artifacts first:</p>
<div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="shell">ignite init</code></pre>
@@ -475,7 +574,7 @@ For example, use the <code>cat</code> command on a Unix operating system.</p>
<h2 id="built-in-examples">Built-in Examples</h2>
<div class="sectionbody">
<div class="paragraph">
-<p>Ignite 3.0 alpha 3 comes with examples that are configured as a separate Maven project located in the <code>examples</code> folder.</p>
+<p>Ignite 3.0 Alpha 4 comes with examples that are configured as a separate Maven project located in the <code>examples</code> folder.</p>
</div>
<div class="paragraph">
<p>The project includes the following examples:</p>
@@ -497,7 +596,7 @@ For example, use the <code>cat</code> command on a Unix operating system.</p>
</ul>
</div>
<div class="paragraph">
-<p>To run the <code>RebalanceExample</code>, refer to its <a href="https://github.com/apache/ignite-3/blob/3.0.0-alpha3/examples/src/main/java/org/apache/ignite/example/rebalance/RebalanceExample.java" target="_blank" rel="noopener">JavaDoc</a> for instructions.</p>
+<p>To run the <code>RebalanceExample</code>, refer to its <a href="https://github.com/apache/ignite-3/blob/3.0.0-alpha4/examples/src/main/java/org/apache/ignite/example/rebalance/RebalanceExample.java" target="_blank" rel="noopener">JavaDoc</a> for instructions.</p>
</div>
<div class="paragraph">
<p>To run any other example, perform the following steps:</p>
@@ -551,7 +650,7 @@ For example, use the <code>cat</code> command on a Unix operating system.</p>
</div>
</div>
<div class="copyright">
- © 2021 The Apache Software Foundation.<br/>
+ © 2022 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
</div>
@@ -607,11 +706,11 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
debug: false,
});
</script>
-<script type='module' src='/assets/js/index.js?1639728293' async crossorigin></script>
-<script type='module' src='/assets/js/versioning.js?1639728293' async crossorigin></script>
+<script type='module' src='/assets/js/index.js?1643403254' async crossorigin></script>
+<script type='module' src='/assets/js/versioning.js?1643403254' async crossorigin></script>
-<link rel="stylesheet" href="/assets/css/styles.css?1639728293" media="print" onload="this.media='all'">
-<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1639728293"></noscript>
+<link rel="stylesheet" href="/assets/css/styles.css?1643403254" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1643403254"></noscript>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" media="print" onload="this.media='all'">
<noscript><link media="all" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css"></noscript>
diff --git a/docs/3.0.0-alpha/rebalance.html b/docs/3.0.0-alpha/rebalance.html
index 498f5fb..cc064f6 100644
--- a/docs/3.0.0-alpha/rebalance.html
+++ b/docs/3.0.0-alpha/rebalance.html
@@ -182,15 +182,100 @@
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine"
+ class=''
+ >Introduction</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/jdbc-driver"
+ class=''
+ >JDBC Driver</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" class='' >Calcite-Based SQL Engine</a>
+
+
+ </nav>
</li>
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/ddl"
+ class=''
+ >Data Definition Language (DDL)</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/jdbc-driver" class='' >JDBC Driver</a>
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/dml"
+ class=''
+ >Data Manipulation Language (DML)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/operators-and-functions"
+ class=''
+ >Supported Operators and Functions</a>
+
+ </li>
+
+
+
+ </nav>
</li>
@@ -215,6 +300,20 @@
</li>
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/transactions/performing-transactions" class='' >Performing Transactions</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/table-views" class='' >Table Views</a>
+
+ </li>
+
</nav>
<div class="left-nav__overlay"></div>
@@ -230,13 +329,17 @@
<p>When a new node joins the cluster, some of the partitions are relocated to the new node so that the data remains distributed equally in the cluster. This process is called data rebalancing.
If an existing node permanently leaves the cluster and backups are not configured, you lose the partitions stored on this node. When backups are configured, one of the backup copies of the lost partitions becomes a primary partition and the rebalancing process is initiated.</p>
</div>
-<div class="paragraph">
-<p>WARNING:</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre>Data rebalancing is triggered by changes in the Baseline Topology. In pure in-memory clusters, the default behavior is to start rebalancing immediately when a node leaves or joins the cluster (the baseline topology changes automatically). In clusters with persistence, the baseline topology has to be changed manually (default behavior), or can be changed automatically when automatic baseline adjustment is enabled.</pre>
-</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<div class="title">Warning</div>
+</td>
+<td class="content">
+Data rebalancing is triggered by changes in the Baseline Topology. In pure in-memory clusters, the default behavior is to start rebalancing immediately when a node leaves or joins the cluster (the baseline topology changes automatically). In clusters with persistence, the baseline topology has to be changed manually (default behavior), or can be changed automatically when automatic baseline adjustment is enabled.
+</td>
+</tr>
+</table>
</div>
</div>
</div>
@@ -252,7 +355,7 @@ If an existing node permanently leaves the cluster and backups are not configure
</div>
</div>
<div class="copyright">
- © 2021 The Apache Software Foundation.<br/>
+ © 2022 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
</div>
@@ -301,11 +404,11 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
debug: false,
});
</script>
-<script type='module' src='/assets/js/index.js?1639728293' async crossorigin></script>
-<script type='module' src='/assets/js/versioning.js?1639728293' async crossorigin></script>
+<script type='module' src='/assets/js/index.js?1643403254' async crossorigin></script>
+<script type='module' src='/assets/js/versioning.js?1643403254' async crossorigin></script>
-<link rel="stylesheet" href="/assets/css/styles.css?1639728293" media="print" onload="this.media='all'">
-<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1639728293"></noscript>
+<link rel="stylesheet" href="/assets/css/styles.css?1643403254" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1643403254"></noscript>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" media="print" onload="this.media='all'">
<noscript><link media="all" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css"></noscript>
diff --git a/docs/3.0.0-alpha/sql-reference/ddl.html b/docs/3.0.0-alpha/sql-reference/ddl.html
new file mode 100644
index 0000000..5dfb4a1
--- /dev/null
+++ b/docs/3.0.0-alpha/sql-reference/ddl.html
@@ -0,0 +1,2704 @@
+<!DOCTYPE html>
+
+
+
+<html lang="en">
+<head>
+ <meta charset="UTF-8">
+ <!-- Global site tag (gtag.js) - Google Analytics -->
+ <script async src="https://www.googletagmanager.com/gtag/js?id=UA-61232409-1"></script>
+ <script>
+ window.dataLayer = window.dataLayer || [];
+ function gtag(){dataLayer.push(arguments);}
+ gtag('js', new Date());
+ gtag('config', 'UA-61232409-1');
+ </script>
+
+ <!-- Yandex.Metrika counter -->
+ <script type="text/javascript" >
+ (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
+ m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
+ (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
+
+ ym(72949126, "init", {
+ clickmap:true,
+ trackLinks:true,
+ accurateTrackBounce:true,
+ webvisor:true
+ });
+ </script>
+ <noscript><div><img src="https://mc.yandex.ru/watch/72949126" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
+ <!-- /Yandex.Metrika counter -->
+
+<!-- Bugyard widget embed -->
+<script type="text/javascript">!function(){if("function"!=typeof window.bugyard){var a=function(){a.c(arguments)};a.q=[],a.c=function(b){a.q.push(b)},window.bugyard=a;var b=document.createElement("script");b.setAttribute("data-bugyard","610961912c35ff001493163a"),b.setAttribute("async","async"),b.setAttribute("defer","defer"),b.setAttribute("src","https://widget.bugyard.io/bugyard.min.js"),document.getElementsByTagName("head")[0].appendChild(b)}}(); window.bugyard("hideButton"); </script>
+
+
+
+
+
+ <link rel="preload" href='/assets/js/code-tabs.js?1' as="script" crossorigin>
+ <link rel="preload" href='/assets/js/page-nav.js' as="script" crossorigin>
+ <link rel="preload" href='/assets/js/docs-menu.js?20201005' as="script" crossorigin>
+
+ <style>:root{--gg-red:#ec1c24;--gg-orange:#ec1c24;--gg-orange-dark:#bc440b;--gg-orange-filter:invert(47%) sepia(61%) saturate(1950%) hue-rotate(345deg) brightness(100%) contrast(95%);--gg-dark-gray:#333333;--orange-line-thickness:3px;--block-code-background:rgba(241, 241, 241, 20%);--inline-code-background:rgba(241, 241, 241, 90%);--padding-top:25px;--link-color:#ec1c24;--body-background:#fcfcfc}header{min-height:var(--header-height);background:#fff;box-shadow:0 4px 10px 0 #eee,0 0 4 [...]
+#header #promotion-bar { background-color: #333333; padding: 8px; }
+#header #promotion-bar p { font-size: 14px; line-height: 1.4em; font-weight: 600; padding: 0; margin: 0; color: #f0f0f0; text-align: center;}
+#header #promotion-bar p a { color: #FCB903; } </style>
+
+
+
+
+ <meta name="ignite-version" content="3.0.0-alpha" />
+ <title>Data Definition Language (DDL) | Ignite Documentation</title>
+
+ <link rel="canonical" href="/docs/3.0.0-alpha/sql-reference/ddl" />
+ <META NAME="ROBOTS" CONTENT="NOINDEX" />
+
+
+ <link rel="shortcut icon" href="/favicon.ico">
+ <meta name='viewport' content='width=device-width, height=device-height, initial-scale=1.0, minimum-scale=1.0'>
+
+ <link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700&display=swap" />
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700&display=swap" media="print" onload="this.media='all'">
+ <noscript>
+ <link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700&display=swap" rel="stylesheet">
+ </noscript>
+
+ <script>
+ // AnchorJS - v4.2.0 - 2019-01-01
+ // https://github.com/bryanbraun/anchorjs
+ // Copyright (c) 2019 Bryan Braun; Licensed MIT
+ !function(A,e){"use strict";"function"==typeof define&&define.amd?define([],e):"object"==typeof module&&module.exports?module.exports=e():(A.AnchorJS=e(),A.anchors=new A.AnchorJS)}(this,function(){"use strict";return function(A){function f(A){A.icon=A.hasOwnProperty("icon")?A.icon:"",A.visible=A.hasOwnProperty("visible")?A.visible:"hover",A.placement=A.hasOwnProperty("placement")?A.placement:"right",A.ariaLabel=A.hasOwnProperty("ariaLabel")?A.ariaLabel:"Anchor",A.class=A.hasOwnPrope [...]
+ </script>
+
+</head>
+<body>
+ <header>
+ <!--#include virtual="/includes/promotion_banner.html" -->
+ <div class="container">
+ <button type='button' class='menu' title='Docs menu'>
+ <img src="/assets/images/menu-icon.svg" width="18" height="12" alt="menu icon" />
+ </button>
+ <div class='home'>
+ <a href="/" class='home' title='Apache Ignite home'>
+ <img src="/assets/images/apache_ignite_logo.svg" alt="Apache Ignite logo" width="103" height="36" >
+ </a>
+ </div>
+
+
+ <select id="version-selector">
+ <option value="3.0.0-alpha">3.0.0-alpha</option>
+ </select>
+
+ <nav id="api-docs"><ul>
+ <li><a href="#">APIs</a>
+ <nav class='dropdown'>
+ <ul>
+ <li class="dropdown-item"><a href="/releases/latest/javadoc/index.html">Java</a></li>
+
+ <li class="dropdown-item"><a href="/releases/latest/dotnetdoc/api/">C#/.NET</a></li>
+
+ <li class="dropdown-item"><a href="/releases/latest/cppdoc/index.html">C++</a></li>
+
+ <li class="dropdown-item"><a href="/releases/latest/scaladoc/scalar/index.html#org.apache.ignite.scalar.scalar$">Scala</a></li>
+ </ul>
+ </nav>
+ </li>
+
+ <li><a href="#">Examples</a>
+ <nav class="dropdown">
+ <ul>
+ <li class="dropdown-item"><a href="https://github.com/apache/ignite/tree/master/examples" target="_blank" rel="noopener" title="Apache Ignite Java examples">Java</a></li>
+
+ <li class="dropdown-item"><a href="https://github.com/apache/ignite/tree/master/modules/platforms/dotnet/examples" target="_blank" rel="noopener" title="Apache Ignite C#/.NET examples">C#/.NET</a></li>
+
+ <li class="dropdown-item"><a href="https://github.com/apache/ignite/tree/master/modules/platforms/cpp/examples" target="_blank" rel="noopener" title="Apache Ignite C++ examples">C++</a></li>
+
+ <li class="dropdown-item"><a href="https://github.com/apache/ignite/tree/master/modules/platforms/python/examples" target="_blank" rel="noopener" title="Apache Ignite Python examples">Python</a></li>
+
+ <li class="dropdown-item"><a href="https://github.com/apache/ignite/tree/master/modules/platforms/nodejs/examples" target="_blank" rel="noopener" title="Apache Ignite NodeJS examples">NodeJS</a></li>
+
+ <li class="dropdown-item"><a href="https://github.com/apache/ignite/tree/master/modules/platforms/php/examples" target="_blank" rel="noopener" title="Apache Ignite PHP examples">PHP</a></li>
+ </ul>
+ </nav>
+ </li></ul>
+ </nav>
+
+ <form class='search'>
+ <button class="search-close" type='button'><img src='/assets/images/cancel.svg' alt="close" width="10" height="10" /></button>
+ <input type="search" placeholder="Search…" id="search-input">
+ </form>
+
+
+ <nav id="lang-selector"><ul>
+ <li><a href="#"><img src="/assets/images/icon_lang_en_75x75.jpg" alt="English language icon" width="25" height="25" /><span>▼</span></a>
+ <nav class="dropdown">
+ <li class="dropdown-item"><a href="/docs/latest/" ><img src="/assets/images/icon_lang_en_75x75.jpg" alt="English language icon" width="25" height="25" /><span>English</span></a></li>
+ <li class="dropdown-item"><a href="https://www.ignite-service.cn/doc/java/" target="_blank" rel="noopener"><img src="/assets/images/icon_lang_cn_75x75.jpg" width="25" height="25" alt="Chinese language icon" /><span>Chinese</span></a></li>
+ </nav>
+ </li></ul>
+ </nav>
+
+ <button type='button' class='top-nav-toggle'>⋮</button>
+
+
+
+ </div>
+</header>
+
+
+ <link rel="stylesheet" href="/assets/css/docs.css">
+<section class='page-docs'>
+
+
+
+
+
+
+<nav class='left-nav' data-swiftype-index='false'>
+
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/index" class='' >Documentation Overview</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/quick-start/getting-started-guide" class='' >Getting Started Guide</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/ignite-cli-tool" class='' >Ignite CLI Tool</a>
+
+ </li>
+
+ <li>
+
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine"
+ class=''
+ >Introduction</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/jdbc-driver"
+ class=''
+ >JDBC Driver</a>
+
+ </li>
+
+
+
+ </nav>
+
+ </li>
+
+ <li>
+
+
+
+
+
+
+ <button type='button' class='group-toggle expanded '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group expanded'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/ddl"
+ class='active'
+ >Data Definition Language (DDL)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/dml"
+ class=''
+ >Data Manipulation Language (DML)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/operators-and-functions"
+ class=''
+ >Supported Operators and Functions</a>
+
+ </li>
+
+
+
+ </nav>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/binary-protocol" class='' >Binary Client Protocol</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/persistence" class='' >Native Persistence</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/rebalance" class='' >Data Rebalancing</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/transactions/performing-transactions" class='' >Performing Transactions</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/table-views" class='' >Table Views</a>
+
+ </li>
+
+</nav>
+<div class="left-nav__overlay"></div>
+
+
+ <article data-swiftype-index='true'>
+ <a class='edit-link' href="https://github.com/apache/ignite/tree/IGNITE-7595/docs/_docs/sql-reference/ddl.adoc" target="_blank">Edit</a>
+
+ <h1>Data Definition Language (DDL)</h1>
+
+ <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>This section walks you through all data definition language (DDL) commands supported by Apache Ignite 3.0 Alpha 4.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="create-table">CREATE TABLE</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Creates a new table.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">CREATE</span> <span class="k">TABLE</span> <span class="p">[</span><span class="n">IF</span> <span class="k">NOT</span> <span class="k">EXISTS</span><span class="p">]</span> <span class="p">[</span><span class="n">simpleName</span> <span class="o">|</span> <span class="n">schemaName</span><span class="p">.</span><span class="n">simpleName</span><span class="p">]</span> <span class="p">(</span><span class="n">tableColumn</ [...]
+<span class="p">[</span><span class="k">WITH</span> <span class="n">paramName</span><span class="o">=</span><span class="n">paramValue</span> <span class="p">[,</span><span class="n">paramName</span><span class="o">=</span><span class="n">paramValue</span><span class="p">]...]</span>
+<span class="n">tableColumn</span> <span class="o">=</span> <span class="n">columnName</span> <span class="n">columnType</span> <span class="p">[[</span><span class="k">NOT</span><span class="p">]</span> <span class="k">NULL</span><span class="p">]</span> <span class="p">[</span><span class="k">DEFAULT</span> <span class="n">defaultValue</span><span class="p">]</span> <span class="p">[</span><span class="k">PRIMARY</span> <span class="k">KEY</span><span class="p">]</span></code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Parameters:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><code>tableName</code> - name of the table.</p>
+</li>
+<li>
+<p><code>tableColumn</code> - name and type of a column to be created in the new table.</p>
+</li>
+<li>
+<p><code>DEFAULT</code> - specifies a default value for the column. Only constant values are accepted.</p>
+</li>
+<li>
+<p><code>IF NOT EXISTS</code> - create the table only if a table with the same name does not exist.</p>
+</li>
+<li>
+<p><code>WITH</code> - accepts additional parameters not defined by ANSI-99 SQL:</p>
+<div class="ulist">
+<ul>
+<li>
+<p><code>Replicas</code> - sets the number of partition copies, including the master copy.</p>
+</li>
+<li>
+<p><code>Partitions</code> - sets the number of table partitions.</p>
+</li>
+</ul>
+</div>
+</li>
+</ul>
+</div>
+<div class="imageblock">
+<div class="content">
+<svg class="railroad-diagram" width="549" height="71" viewBox="0 0 549 71" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 30v20m10 -20v20m-10 -10h20"></path>
+ </g>
+ <path d="M40 40h10"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M499 40h0"></path>
+ <g class="terminal ">
+ <path d="M50 40h0"></path>
+ <path d="M121 40h0"></path>
+ <rect x="50" y="29" width="71" height="22" rx="10" ry="10"></rect>
+ <text x="85.5" y="44">CREATE</text>
+ </g>
+ <path d="M121 40h10"></path>
+ <path d="M131 40h10"></path>
+ <g class="terminal ">
+ <path d="M141 40h0"></path>
+ <path d="M203.5 40h0"></path>
+ <rect x="141" y="29" width="62.5" height="22" rx="10" ry="10"></rect>
+ <text x="172.25" y="44">TABLE</text>
+ </g>
+ <path d="M203.5 40h10"></path>
+ <g>
+ <path d="M213.5 40h0"></path>
+ <path d="M384 40h0"></path>
+ <path d="M213.5 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M233.5 20h130.5"></path>
+ </g>
+ <path d="M364 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M213.5 40h20"></path>
+ <g class="terminal ">
+ <path d="M233.5 40h0"></path>
+ <path d="M364 40h0"></path>
+ <rect x="233.5" y="29" width="130.5" height="22" rx="10" ry="10"></rect>
+ <text x="298.75" y="44">IF NOT EXISTS</text>
+ </g>
+ <path d="M364 40h20"></path>
+ </g>
+ <path d="M384 40h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#qualified_table_name">
+ <g class="non-terminal ">
+ <path d="M394 40h0"></path>
+ <path d="M499 40h0"></path>
+ <rect x="394" y="29" width="105" height="22"></rect>
+ <text x="446.5" y="44" fill="blue">table_name</text>
+ </g>
+ </a>
+ </g>
+ <g fill="none" stroke="black" stroke-width="2">
+ <path stroke-dasharray="5,5" d="M505 40 l30 0" />
+ </g>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
+</div>
+</div>
+<div class="imageblock">
+<div class="content">
+<svg class="railroad-diagram" width="861" height="122" viewBox="0 0 861 122" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g fill="none" stroke="black" stroke-width="2">
+ <path stroke-dasharray="5,5" d="M10 61 l30 0" />
+ </g>
+ <path d="M40 61h10"></path>
+ <g>
+ <path d="M50 61h0"></path>
+ <path d="M811 61h0"></path>
+ <g class="terminal ">
+ <path d="M50 61h0"></path>
+ <path d="M78.5 61h0"></path>
+ <rect x="50" y="50" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="64.25" y="65">(</text>
+ </g>
+ <path d="M78.5 61h10"></path>
+ <path d="M88.5 61h10"></path>
+ <g>
+ <path d="M98.5 61h0"></path>
+ <path d="M331.5 61h0"></path>
+ <path d="M98.5 61h10"></path>
+ <g>
+ <path d="M108.5 61h0"></path>
+ <path d="M321.5 61h0"></path>
+ <path d="M108.5 61a10 10 0 0 0 10 -10v-10a10 10 0 0 1 10 -10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#constraint">
+ <g class="non-terminal ">
+ <path d="M128.5 31h21.25"></path>
+ <path d="M280.25 31h21.25"></path>
+ <rect x="149.75" y="20" width="130.5" height="22"></rect>
+ <text x="215" y="35" fill="blue">constraint</text>
+ </g>
+ </a>
+ <path d="M301.5 31a10 10 0 0 1 10 10v10a10 10 0 0 0 10 10"></path>
+ <path d="M108.5 61h20"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#column_definition">
+ <g class="non-terminal ">
+ <path d="M128.5 61h0"></path>
+ <path d="M301.5 61h0"></path>
+ <rect x="128.5" y="50" width="173" height="22"></rect>
+ <text x="215" y="65" fill="blue">column_definition</text>
+ </g>
+ </a>
+ <path d="M301.5 61h20"></path>
+ </g>
+ <path d="M321.5 61h10"></path>
+ <path d="M108.5 61a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M108.5 91h92.25"></path>
+ <path d="M229.25 91h92.25"></path>
+ <rect x="200.75" y="80" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="215" y="95">,</text>
+ </g>
+ <path d="M321.5 91a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path>
+ </g>
+ <path d="M331.5 61h10"></path>
+ <path d="M341.5 61h10"></path>
+ <g class="terminal ">
+ <path d="M351.5 61h0"></path>
+ <path d="M380 61h0"></path>
+ <rect x="351.5" y="50" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="365.75" y="65">)</text>
+ </g>
+ <path d="M380 61h10"></path>
+ <g>
+ <path d="M390 61h0"></path>
+ <path d="M811 61h0"></path>
+ <path d="M390 61a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M410 41h381"></path>
+ </g>
+ <path d="M791 41a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M390 61h20"></path>
+ <g>
+ <path d="M410 61h0"></path>
+ <path d="M791 61h0"></path>
+ <g class="terminal ">
+ <path d="M410 61h0"></path>
+ <path d="M464 61h0"></path>
+ <rect x="410" y="50" width="54" height="22" rx="10" ry="10"></rect>
+ <text x="437" y="65">WITH</text>
+ </g>
+ <path d="M464 61h10"></path>
+ <path d="M474 61h10"></path>
+ <g>
+ <path d="M484 61h0"></path>
+ <path d="M791 61h0"></path>
+ <path d="M484 61h10"></path>
+ <g>
+ <path d="M494 61h0"></path>
+ <path d="M781 61h0"></path>
+ <g class="non-terminal ">
+ <path d="M494 61h0"></path>
+ <path d="M599 61h0"></path>
+ <rect x="494" y="50" width="105" height="22"></rect>
+ <text x="546.5" y="65">param_name</text>
+ </g>
+ <path d="M599 61h10"></path>
+ <path d="M609 61h10"></path>
+ <g class="terminal ">
+ <path d="M619 61h0"></path>
+ <path d="M647.5 61h0"></path>
+ <rect x="619" y="50" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="633.25" y="65">=</text>
+ </g>
+ <path d="M647.5 61h10"></path>
+ <path d="M657.5 61h10"></path>
+ <g class="non-terminal ">
+ <path d="M667.5 61h0"></path>
+ <path d="M781 61h0"></path>
+ <rect x="667.5" y="50" width="113.5" height="22"></rect>
+ <text x="724.25" y="65">param_value</text>
+ </g>
+ </g>
+ <path d="M781 61h10"></path>
+ <path d="M494 61a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M494 91h129.25"></path>
+ <path d="M651.75 91h129.25"></path>
+ <rect x="623.25" y="80" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="637.5" y="95">,</text>
+ </g>
+ <path d="M781 91a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path>
+ </g>
+ </g>
+ <path d="M791 61h20"></path>
+ </g>
+ </g>
+ <path d="M811 61h10"></path>
+ <path d="M 821 61 h 20 m -10 -10 v 20 m 10 -20 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
+</div>
+</div>
+<div class="paragraph">
+<p>Examples:</p>
+</div>
+<div class="paragraph">
+<p>Create Person table:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">CREATE</span> <span class="k">TABLE</span> <span class="n">IF</span> <span class="k">NOT</span> <span class="k">EXISTS</span> <span class="n">Person</span> <span class="p">(</span>
+ <span class="n">id</span> <span class="nb">int</span> <span class="k">primary</span> <span class="k">key</span><span class="p">,</span>
+ <span class="n">city_id</span> <span class="nb">int</span><span class="p">,</span>
+ <span class="n">name</span> <span class="nb">varchar</span><span class="p">,</span>
+ <span class="n">age</span> <span class="nb">int</span><span class="p">,</span>
+ <span class="n">company</span> <span class="nb">varchar</span><span class="p">,</span>
+<span class="p">)</span></code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="alter-table">ALTER TABLE</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Modifies the structure of an existing table.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<div class="title">Note</div>
+</td>
+<td class="content">
+<h3 id="scope-of-alter-table" class="discrete">Scope of ALTER TABLE</h3>
+<div class="paragraph">
+<p>Presently, Apache Ignite only supports addition and removal of columns.</p>
+</div>
+</td>
+</tr>
+</table>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><strong>ALTER TABLE IF EXISTS table LOGGING</strong></p>
+</li>
+</ul>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">ALTER</span> <span class="k">TABLE</span> <span class="p">[</span><span class="n">IF</span> <span class="k">EXISTS</span><span class="p">]</span> <span class="n">tableName</span> <span class="p">{</span><span class="n">LOGGING</span><span class="p">}</span></code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Parameters:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><code>IF EXISTS</code> - if applied to <code>TABLE</code>, do not throw an error if a table with the specified table name does not exist. If applied to <code>COLUMN</code>, do not throw an error if a column with the specified name does not exist.</p>
+</li>
+<li>
+<p><code>qualified_table_name</code> - the name of the table.</p>
+</li>
+<li>
+<p><code>LOGGING</code> - enables write-ahead logging for the table. The command is relevant only if Ignite <a href="https://ignite.apache.org/docs/3.0.0-alpha/persistence" target="_blank" rel="noopener">persistence</a> is used.</p>
+</li>
+</ul>
+</div>
+<div class="imageblock">
+<div class="content">
+<svg class="railroad-diagram" width="738" height="91" viewBox="0 0 738 91" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 30v20m10 -20v20m-10 -10h20"></path>
+ </g>
+ <path d="M40 40h10"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M688 40h0"></path>
+ <g class="terminal ">
+ <path d="M50 40h0"></path>
+ <path d="M163.5 40h0"></path>
+ <rect x="50" y="29" width="113.5" height="22" rx="10" ry="10"></rect>
+ <text x="106.75" y="44">ALTER TABLE</text>
+ </g>
+ <path d="M163.5 40h10"></path>
+ <g>
+ <path d="M173.5 40h0"></path>
+ <path d="M310 40h0"></path>
+ <path d="M173.5 40h20"></path>
+ <g>
+ <path d="M193.5 40h96.5"></path>
+ </g>
+ <path d="M290 40h20"></path>
+ <path d="M173.5 40a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M193.5 60h0"></path>
+ <path d="M290 60h0"></path>
+ <rect x="193.5" y="49" width="96.5" height="22" rx="10" ry="10"></rect>
+ <text x="241.75" y="64">IF EXISTS</text>
+ </g>
+ <path d="M290 60a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M310 40h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#qualified_table_name">
+ <g class="non-terminal ">
+ <path d="M320 40h0"></path>
+ <path d="M510 40h0"></path>
+ <rect x="320" y="29" width="190" height="22"></rect>
+ <text x="415" y="44" fill="blue">qualified_table_name</text>
+ </g>
+ </a>
+ <path d="M510 40h10"></path>
+ <path d="M520 40h10"></path>
+ <g class="terminal ">
+ <path d="M530 40h0"></path>
+ <path d="M609.5 40h0"></path>
+ <rect x="530" y="29" width="79.5" height="22" rx="10" ry="10"></rect>
+ <text x="569.75" y="44">LOGGING</text>
+ </g>
+ <path d="M609.5 40h10"></path>
+ <g>
+ <path d="M619.5 40h0"></path>
+ <path d="M688 40h0"></path>
+ <path d="M619.5 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M639.5 20h28.5"></path>
+ </g>
+ <path d="M668 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M619.5 40h20"></path>
+ <g class="terminal ">
+ <path d="M639.5 40h0"></path>
+ <path d="M668 40h0"></path>
+ <rect x="639.5" y="29" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="653.75" y="44">;</text>
+ </g>
+ <path d="M668 40h20"></path>
+ </g>
+ </g>
+ <path d="M688 40h10"></path>
+ <path d="M 698 40 h 20 m -10 -10 v 20 m 10 -20 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
+</div>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><strong>ALTER TABLE IF EXISTS table NOLOGGING</strong></p>
+</li>
+</ul>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">ALTER</span> <span class="k">TABLE</span> <span class="p">[</span><span class="n">IF</span> <span class="k">EXISTS</span><span class="p">]</span> <span class="n">tableName</span> <span class="p">{</span><span class="n">NOLOGGING</span><span class="p">}</span></code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Parameters:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><code>IF EXISTS</code> - if applied to <code>TABLE</code>, do not throw an error if a table with the specified table name does not exist. If applied to <code>COLUMN</code>, do not throw an error if a column with the specified name does not exist.</p>
+</li>
+<li>
+<p><code>qualified_table_name</code> - the name of the table.</p>
+</li>
+<li>
+<p><code>NOLOGGING</code> - disables write-ahead logging for the table. The command is relevant only if Ignite <a href="https://ignite.apache.org/docs/3.0.0-alpha/persistence" target="_blank" rel="noopener">persistence</a> is used.</p>
+</li>
+</ul>
+</div>
+<div class="imageblock">
+<div class="content">
+<svg class="railroad-diagram" width="755" height="91" viewBox="0 0 755 91" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 30v20m10 -20v20m-10 -10h20"></path>
+ </g>
+ <path d="M40 40h10"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M705 40h0"></path>
+ <g class="terminal ">
+ <path d="M50 40h0"></path>
+ <path d="M163.5 40h0"></path>
+ <rect x="50" y="29" width="113.5" height="22" rx="10" ry="10"></rect>
+ <text x="106.75" y="44">ALTER TABLE</text>
+ </g>
+ <path d="M163.5 40h10"></path>
+ <g>
+ <path d="M173.5 40h0"></path>
+ <path d="M310 40h0"></path>
+ <path d="M173.5 40h20"></path>
+ <g>
+ <path d="M193.5 40h96.5"></path>
+ </g>
+ <path d="M290 40h20"></path>
+ <path d="M173.5 40a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M193.5 60h0"></path>
+ <path d="M290 60h0"></path>
+ <rect x="193.5" y="49" width="96.5" height="22" rx="10" ry="10"></rect>
+ <text x="241.75" y="64">IF EXISTS</text>
+ </g>
+ <path d="M290 60a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M310 40h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#qualified_table_name">
+ <g class="non-terminal ">
+ <path d="M320 40h0"></path>
+ <path d="M510 40h0"></path>
+ <rect x="320" y="29" width="190" height="22"></rect>
+ <text x="415" y="44" fill="blue">qualified_table_name</text>
+ </g>
+ </a>
+ <path d="M510 40h10"></path>
+ <path d="M520 40h10"></path>
+ <g class="terminal ">
+ <path d="M530 40h0"></path>
+ <path d="M626.5 40h0"></path>
+ <rect x="530" y="29" width="96.5" height="22" rx="10" ry="10"></rect>
+ <text x="578.25" y="44">NOLOGGING</text>
+ </g>
+ <path d="M626.5 40h10"></path>
+ <g>
+ <path d="M636.5 40h0"></path>
+ <path d="M705 40h0"></path>
+ <path d="M636.5 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M656.5 20h28.5"></path>
+ </g>
+ <path d="M685 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M636.5 40h20"></path>
+ <g class="terminal ">
+ <path d="M656.5 40h0"></path>
+ <path d="M685 40h0"></path>
+ <rect x="656.5" y="29" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="670.75" y="44">;</text>
+ </g>
+ <path d="M685 40h20"></path>
+ </g>
+ </g>
+ <path d="M705 40h10"></path>
+ <path d="M 715 40 h 20 m -10 -10 v 20 m 10 -20 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
+</div>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><strong>ALTER TABLE IF EXISTS table ADD COLUMN IF NOT EXISTS (column1 int, column2 int)</strong></p>
+</li>
+</ul>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">ALTER</span> <span class="k">TABLE</span> <span class="p">[</span><span class="n">IF</span> <span class="k">EXISTS</span><span class="p">]</span> <span class="n">tableName</span> <span class="p">{</span><span class="k">ADD</span> <span class="p">[</span><span class="k">COLUMN</span><span class="p">]</span> <span class="p">{[</span><span class="n">IF</span> <span class="k">NOT</span> <span class="k">EXISTS</span><span clas [...]
+</div>
+</div>
+<div class="paragraph">
+<p>Parameters:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><code>IF EXISTS</code> - if applied to <code>TABLE</code>, do not throw an error if a table with the specified table name does not exist. If applied to <code>COLUMN</code>, do not throw an error if a column with the specified name does not exist.</p>
+</li>
+<li>
+<p><code>qualified_table_name</code> - the name of the table.</p>
+</li>
+<li>
+<p><code>ADD</code> - adds a new column or several columns to a previously created table. Once a column is added, it can be accessed using <a href="/docs/3.0.0-alpha/sql-reference/dml" target="_blank" rel="noopener">DML commands</a> and indexed with the CREATE INDEX statement (currently not supported).</p>
+</li>
+<li>
+<p><code>COLUMN</code> - name of the defined column.</p>
+</li>
+<li>
+<p><code>IF NOT EXISTS</code> - do not throw an error if a column with the same name already exists.</p>
+</li>
+<li>
+<p><code>column_definition_or_list</code> - the name of the column or the list of columns to be added.</p>
+</li>
+</ul>
+</div>
+<div class="imageblock">
+<div class="content">
+<svg class="railroad-diagram" width="625.5" height="82" viewBox="0 0 625.5 82" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 21v20m10 -20v20m-10 -10h20"></path>
+ </g>
+ <path d="M40 31h10"></path>
+ <g>
+ <path d="M50 31h0"></path>
+ <path d="M575.5 31h0"></path>
+ <g class="terminal ">
+ <path d="M50 31h0"></path>
+ <path d="M163.5 31h0"></path>
+ <rect x="50" y="20" width="113.5" height="22" rx="10" ry="10"></rect>
+ <text x="106.75" y="35">ALTER TABLE</text>
+ </g>
+ <path d="M163.5 31h10"></path>
+ <g>
+ <path d="M173.5 31h0"></path>
+ <path d="M310 31h0"></path>
+ <path d="M173.5 31h20"></path>
+ <g>
+ <path d="M193.5 31h96.5"></path>
+ </g>
+ <path d="M290 31h20"></path>
+ <path d="M173.5 31a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M193.5 51h0"></path>
+ <path d="M290 51h0"></path>
+ <rect x="193.5" y="40" width="96.5" height="22" rx="10" ry="10"></rect>
+ <text x="241.75" y="55">IF EXISTS</text>
+ </g>
+ <path d="M290 51a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M310 31h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#qualified_table_name">
+ <g class="non-terminal ">
+ <path d="M320 40h0"></path>
+ <path d="M510 40h0"></path>
+ <rect x="320" y="29" width="190" height="22"></rect>
+ <text x="415" y="44" fill="blue">qualified_table_name</text>
+ </g>
+ </a>
+ <path d="M510 31h10"></path>
+ <path d="M520 31h10"></path>
+ <g>
+ <path d="M530 31h0"></path>
+ <path d="M575.5 31h0"></path>
+ <g class="terminal ">
+ <path d="M530 31h0"></path>
+ <path d="M575.5 31h0"></path>
+ <rect x="530" y="20" width="45.5" height="22" rx="10" ry="10"></rect>
+ <text x="552.75" y="35">ADD</text>
+ </g>
+ </g>
+ </g>
+ <g fill="none" stroke="black" stroke-width="2">
+ <path stroke-dasharray="5,5" d="M581 32 l30 0" />
+ </g>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
+</div>
+</div>
+<div class="imageblock">
+<div class="content">
+<svg class="railroad-diagram" width="702.5" height="91" viewBox="0 0 702.5 91" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g fill="none" stroke="black" stroke-width="2">
+ <path stroke-dasharray="5,5" d="M11 40 l30 0" />
+ </g>
+ <path d="M40 40h10"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M652.5 40h0"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M574 40h0"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M161 40h0"></path>
+ <path d="M50 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M70 20h71"></path>
+ </g>
+ <path d="M141 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M50 40h20"></path>
+ <g class="terminal ">
+ <path d="M70 40h0"></path>
+ <path d="M141 40h0"></path>
+ <rect x="70" y="29" width="71" height="22" rx="10" ry="10"></rect>
+ <text x="105.5" y="44">COLUMN</text>
+ </g>
+ <path d="M141 40h20"></path>
+ </g>
+ <g>
+ <path d="M161 40h0"></path>
+ <path d="M331.5 40h0"></path>
+ <path d="M161 40h20"></path>
+ <g>
+ <path d="M181 40h130.5"></path>
+ </g>
+ <path d="M311.5 40h20"></path>
+ <path d="M161 40a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M181 60h0"></path>
+ <path d="M311.5 60h0"></path>
+ <rect x="181" y="49" width="130.5" height="22" rx="10" ry="10"></rect>
+ <text x="246.25" y="64">IF NOT EXISTS</text>
+ </g>
+ <path d="M311.5 60a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M331.5 40h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#column_definition_or_list">
+ <g class="non-terminal ">
+ <path d="M341.5 40h0"></path>
+ <path d="M574 40h0"></path>
+ <rect x="341.5" y="29" width="232.5" height="22"></rect>
+ <text x="457.75" y="44" fill="blue">column_definition_or_list</text>
+ </g>
+ </a>
+ </g>
+ <path d="M574 40h10"></path>
+ <g>
+ <path d="M584 40h0"></path>
+ <path d="M652.5 40h0"></path>
+ <path d="M584 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M604 20h28.5"></path>
+ </g>
+ <path d="M632.5 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M584 40h20"></path>
+ <g class="terminal ">
+ <path d="M604 40h0"></path>
+ <path d="M632.5 40h0"></path>
+ <rect x="604" y="29" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="618.25" y="44">;</text>
+ </g>
+ <path d="M632.5 40h20"></path>
+ </g>
+ </g>
+ <path d="M652.5 40h10"></path>
+ <path d="M 662.5 40 h 20 m -10 -10 v 20 m 10 -20 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: ;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
+</div>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><strong>ALTER TABLE IF EXISTS table ADD COLUMN IF EXISTS (column1, column2 int)</strong></p>
+</li>
+</ul>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">ALTER</span> <span class="k">TABLE</span> <span class="p">[</span><span class="n">IF</span> <span class="k">EXISTS</span><span class="p">]</span> <span class="n">tableName</span> <span class="k">DROP</span> <span class="p">[</span><span class="k">COLUMN</span><span class="p">]</span> <span class="p">{[</span><span class="n">IF</span> <span class="k">EXISTS</span><span class="p">]</span> <span class="p">(</span><span class [...]
+</div>
+</div>
+<div class="paragraph">
+<p>Parameters:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><code>IF EXISTS</code> - if applied to <code>TABLE</code>, do not throw an error if a table with the specified table name does not exist. If applied to <code>COLUMN</code>, do not throw an error if a column with the specified name does not exist.</p>
+</li>
+<li>
+<p><code>qualified_table_name</code> - the name of the table.</p>
+</li>
+<li>
+<p><code>DROP</code> - removes an existing column or multiple columns from a table. Once a column is removed, it cannot be accessed within queries. Consider the following notes and limitations:</p>
+</li>
+<li>
+<p><code>COLUMN</code> - name of the defined column.</p>
+</li>
+<li>
+<p><code>column_list</code> - the name of the list of columns to be removed.</p>
+</li>
+</ul>
+</div>
+<div class="imageblock">
+<div class="content">
+<svg class="railroad-diagram" width="634" height="82" viewBox="0 0 634 82" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 21v20m10 -20v20m-10 -10h20"></path>
+ </g>
+ <path d="M40 31h10"></path>
+ <g>
+ <path d="M50 31h0"></path>
+ <path d="M584 31h0"></path>
+ <g class="terminal ">
+ <path d="M50 31h0"></path>
+ <path d="M163.5 31h0"></path>
+ <rect x="50" y="20" width="113.5" height="22" rx="10" ry="10"></rect>
+ <text x="106.75" y="35">ALTER TABLE</text>
+ </g>
+ <path d="M163.5 31h10"></path>
+ <g>
+ <path d="M173.5 31h0"></path>
+ <path d="M310 31h0"></path>
+ <path d="M173.5 31h20"></path>
+ <g>
+ <path d="M193.5 31h96.5"></path>
+ </g>
+ <path d="M290 31h20"></path>
+ <path d="M173.5 31a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M193.5 51h0"></path>
+ <path d="M290 51h0"></path>
+ <rect x="193.5" y="40" width="96.5" height="22" rx="10" ry="10"></rect>
+ <text x="241.75" y="55">IF EXISTS</text>
+ </g>
+ <path d="M290 51a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M310 31h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#qualified_table_name">
+ <g class="non-terminal ">
+ <path d="M320 40h0"></path>
+ <path d="M510 40h0"></path>
+ <rect x="320" y="29" width="190" height="22"></rect>
+ <text x="415" y="44" fill="blue">qualified_table_name</text>
+ </g>
+ </a>
+ <path d="M510 31h10"></path>
+ <path d="M520 31h10"></path>
+ <g>
+ <path d="M530 31h0"></path>
+ <path d="M584 31h0"></path>
+ <g class="terminal ">
+ <path d="M530 31h0"></path>
+ <path d="M584 31h0"></path>
+ <rect x="530" y="20" width="54" height="22" rx="10" ry="10"></rect>
+ <text x="557" y="35">DROP</text>
+ </g>
+ </g>
+ </g>
+ <g fill="none" stroke="black" stroke-width="2">
+ <path stroke-dasharray="5,5" d="M588 32 l30 0" />
+ </g>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
+</div>
+</div>
+<div class="imageblock">
+<div class="content">
+<svg class="railroad-diagram" width="549.5" height="91" viewBox="0 0 549.5 91" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g fill="none" stroke="black" stroke-width="2">
+ <path stroke-dasharray="5,5" d="M10 40 l30 0" />
+ </g>
+ <path d="M40 40h10"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M499.5 40h0"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M421 40h0"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M161 40h0"></path>
+ <path d="M50 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M70 20h71"></path>
+ </g>
+ <path d="M141 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M50 40h20"></path>
+ <g class="terminal ">
+ <path d="M70 40h0"></path>
+ <path d="M141 40h0"></path>
+ <rect x="70" y="29" width="71" height="22" rx="10" ry="10"></rect>
+ <text x="105.5" y="44">COLUMN</text>
+ </g>
+ <path d="M141 40h20"></path>
+ </g>
+ <g>
+ <path d="M161 40h0"></path>
+ <path d="M297.5 40h0"></path>
+ <path d="M161 40h20"></path>
+ <g>
+ <path d="M181 40h96.5"></path>
+ </g>
+ <path d="M277.5 40h20"></path>
+ <path d="M161 40a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M181 60h0"></path>
+ <path d="M277.5 60h0"></path>
+ <rect x="181" y="49" width="96.5" height="22" rx="10" ry="10"></rect>
+ <text x="229.25" y="64">IF EXISTS</text>
+ </g>
+ <path d="M277.5 60a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M297.5 40h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#column_list">
+ <g class="non-terminal ">
+ <path d="M307.5 40h0"></path>
+ <path d="M421 40h0"></path>
+ <rect x="307.5" y="29" width="113.5" height="22"></rect>
+ <text x="364.25" y="44" fill="blue">column_list</text>
+ </g>
+ </a>
+ </g>
+ <path d="M421 40h10"></path>
+ <g>
+ <path d="M431 40h0"></path>
+ <path d="M499.5 40h0"></path>
+ <path d="M431 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M451 20h28.5"></path>
+ </g>
+ <path d="M479.5 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M431 40h20"></path>
+ <g class="terminal ">
+ <path d="M451 40h0"></path>
+ <path d="M479.5 40h0"></path>
+ <rect x="451" y="29" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="465.25" y="44">;</text>
+ </g>
+ <path d="M479.5 40h20"></path>
+ </g>
+ </g>
+ <path d="M499.5 40h10"></path>
+ <path d="M 509.5 40 h 20 m -10 -10 v 20 m 10 -20 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
+</div>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>The command does not remove actual data from the cluster which means that if the column 'name' is dropped, the value of the 'name' is still stored in the cluster. This limitation is to be addressed in the next releases.</p>
+</li>
+<li>
+<p>If the column was indexed, the index has to be dropped manually using the 'DROP INDEX' command.</p>
+</li>
+<li>
+<p>It is not possible to remove a column that is a primary key or a part of such a key.</p>
+</li>
+<li>
+<p>It is not possible to remove a column if it represents the whole value stored in the cluster. The limitation is relevant for primitive values.
+Ignite stores data in the form of key-value pairs and all the new columns will belong to the value. It’s not possible to change a set of columns of the key (<code>PRIMARY KEY</code>).</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>Both DDL and DML commands targeting the same table are blocked for a short time until <code>ALTER TABLE</code> is in progress.</p>
+</div>
+<div class="paragraph">
+<p>Schema changes applied by this command are persisted on disk if <a href="https://ignite.apache.org/docs/3.0.0-alpha/persistence" target="_blank" rel="noopener">persistence</a> is enabled. Thus, the changes can survive full cluster restarts.</p>
+</div>
+<div class="paragraph">
+<p>Examples:</p>
+</div>
+<div class="paragraph">
+<p>Add a column to the table:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">ALTER</span> <span class="k">TABLE</span> <span class="n">Person</span> <span class="k">ADD</span> <span class="k">COLUMN</span> <span class="n">city</span> <span class="nb">varchar</span><span class="p">;</span></code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Add a new column to the table only if a column with the same name does not exist:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">ALTER</span> <span class="k">TABLE</span> <span class="n">City</span> <span class="k">ADD</span> <span class="k">COLUMN</span> <span class="n">IF</span> <span class="k">NOT</span> <span class="k">EXISTS</span> <span class="n">population</span> <span class="nb">int</span><span class="p">;</span></code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Add a column only if the table exists:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">ALTER</span> <span class="k">TABLE</span> <span class="n">IF</span> <span class="k">EXISTS</span> <span class="n">Missing</span> <span class="k">ADD</span> <span class="n">number</span> <span class="n">long</span><span class="p">;</span></code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Add several columns to the table at once:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">ALTER</span> <span class="k">TABLE</span> <span class="n">Region</span> <span class="k">ADD</span> <span class="k">COLUMN</span> <span class="p">(</span><span class="n">code</span> <span class="nb">varchar</span><span class="p">,</span> <span class="n">gdp</span> <span class="nb">double</span><span class="p">);</span></code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Drop a column from the table:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">ALTER</span> <span class="k">TABLE</span> <span class="n">Person</span> <span class="k">DROP</span> <span class="k">COLUMN</span> <span class="n">city</span><span class="p">;</span></code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Drop a column from the table only if a column with the same name does exist:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">ALTER</span> <span class="k">TABLE</span> <span class="n">Person</span> <span class="k">DROP</span> <span class="k">COLUMN</span> <span class="n">IF</span> <span class="k">EXISTS</span> <span class="n">population</span><span class="p">;</span></code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Drop a column only if the table exists:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">ALTER</span> <span class="k">TABLE</span> <span class="n">IF</span> <span class="k">EXISTS</span> <span class="n">Person</span> <span class="k">DROP</span> <span class="k">COLUMN</span> <span class="n">number</span><span class="p">;</span></code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Drop several columns from the table at once:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">ALTER</span> <span class="k">TABLE</span> <span class="n">Person</span> <span class="k">DROP</span> <span class="k">COLUMN</span> <span class="p">(</span><span class="n">code</span><span class="p">,</span> <span class="n">gdp</span><span class="p">);</span></code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Disable write-ahead logging:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">ALTER</span> <span class="k">TABLE</span> <span class="n">Person</span> <span class="n">NOLOGGING</span></code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="drop-table">DROP TABLE</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The <code>DROP TABLE</code> command drops an existing table.
+The underlying cache with all the data in it is destroyed, too.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">DROP</span> <span class="k">TABLE</span> <span class="p">[</span><span class="n">IF</span> <span class="k">EXISTS</span><span class="p">]</span> <span class="n">tableName</span></code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Parameters:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><code>tableName</code> - the name of the table.</p>
+</li>
+<li>
+<p><code>IF NOT EXISTS</code> - do not throw an error if a table with the same name does not exist.</p>
+</li>
+</ul>
+</div>
+<div class="imageblock">
+<div class="content">
+<svg class="railroad-diagram" width="630" height="91" viewBox="0 0 630 91" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 30v20m10 -20v20m-10 -10h20"></path>
+ </g>
+ <path d="M40 40h10"></path>
+ <g>
+ <path d="M50 40h0"></path>
+ <path d="M580 40h0"></path>
+ <g class="terminal ">
+ <path d="M50 40h0"></path>
+ <path d="M155 40h0"></path>
+ <rect x="50" y="29" width="105" height="22" rx="10" ry="10"></rect>
+ <text x="102.5" y="44">DROP TABLE</text>
+ </g>
+ <path d="M155 40h10"></path>
+ <g>
+ <path d="M165 40h0"></path>
+ <path d="M301.5 40h0"></path>
+ <path d="M165 40h20"></path>
+ <g>
+ <path d="M185 40h96.5"></path>
+ </g>
+ <path d="M281.5 40h20"></path>
+ <path d="M165 40a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M185 60h0"></path>
+ <path d="M281.5 60h0"></path>
+ <rect x="185" y="49" width="96.5" height="22" rx="10" ry="10"></rect>
+ <text x="233.25" y="64">IF EXISTS</text>
+ </g>
+ <path d="M281.5 60a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M301.5 40h10"></path>
+ <a xlink:href="https://ignite.apache.org/docs/3.0.0-alpha/sql-reference/ddl#qualified_table_name">
+ <g class="non-terminal ">
+ <path d="M311.5 40h0"></path>
+ <path d="M501.5 40h0"></path>
+ <rect x="311.5" y="29" width="190" height="22"></rect>
+ <text x="406.5" y="44" fill="blue">qualified_table_name</text>
+ </g>
+ </a>
+ <path d="M501.5 40h10"></path>
+ <g>
+ <path d="M511.5 40h0"></path>
+ <path d="M580 40h0"></path>
+ <path d="M511.5 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M531.5 20h28.5"></path>
+ </g>
+ <path d="M560 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M511.5 40h20"></path>
+ <g class="terminal ">
+ <path d="M531.5 40h0"></path>
+ <path d="M560 40h0"></path>
+ <rect x="531.5" y="29" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="545.75" y="44">;</text>
+ </g>
+ <path d="M560 40h20"></path>
+ </g>
+ </g>
+ <path d="M580 40h10"></path>
+ <path d="M 590 40 h 20 m -10 -10 v 20 m 10 -20 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
+</div>
+</div>
+<div class="paragraph">
+<p>Both DDL and DML commands targeting the same table are blocked while the <code>DROP TABLE</code> is in progress.
+Once the table is dropped, all pending commands will fail with appropriate errors.</p>
+</div>
+<div class="paragraph">
+<p>Schema changes applied by this command are persisted on disk if <a href="https://ignite.apache.org/docs/3.0.0-alpha/persistence" target="_blank" rel="noopener">persistence</a> is enabled. Thus, the changes can survive full cluster restarts.</p>
+</div>
+<div class="paragraph">
+<p>Examples:</p>
+</div>
+<div class="paragraph">
+<p>Drop Person table if the one exists:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">DROP</span> <span class="k">TABLE</span> <span class="n">IF</span> <span class="k">EXISTS</span> <span class="nv">"Person"</span><span class="p">;</span></code></pre>
+</div>
+</div>
+</div>
+</div>
+<h1 id="grammar-reference" class="sect0">Grammar Reference</h1>
+<div class="sect1">
+<h2 id="column_definition_or_list">column_definition_or_list</h2>
+<div class="sectionbody">
+<div class="imageblock">
+<div class="content">
+<svg class="railroad-diagram" width="527" height="133" viewBox="0 0 527 133" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 54v20m0 -10h20"></path>
+ </g>
+ <path d="M40 64h10"></path>
+ <g>
+ <path d="M50 64h0"></path>
+ <path d="M477 64h0"></path>
+ <rect x="50" y="36" width="427" height="77" rx="10" ry="10" class="group-box"></rect>
+ <g>
+ <path d="M50 64h10"></path>
+ <path d="M467 64h10"></path>
+ <g>
+ <path d="M60 64h0"></path>
+ <path d="M128.5 64h0"></path>
+ <path d="M60 64a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M80 44h28.5"></path>
+ </g>
+ <path d="M108.5 44a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M60 64h20"></path>
+ <g class="terminal ">
+ <path d="M80 64h0"></path>
+ <path d="M108.5 64h0"></path>
+ <rect x="80" y="53" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="94.25" y="68">(</text>
+ </g>
+ <path d="M108.5 64h20"></path>
+ </g>
+ <path d="M128.5 64h10"></path>
+ <g>
+ <path d="M138.5 64h0"></path>
+ <path d="M388.5 64h0"></path>
+ <path d="M138.5 64h10"></path>
+ <g>
+ <path d="M148.5 64h0"></path>
+ <path d="M378.5 64h0"></path>
+ <g class="non-terminal ">
+ <path d="M148.5 64h0"></path>
+ <path d="M262 64h0"></path>
+ <rect x="148.5" y="53" width="113.5" height="22"></rect>
+ <text x="205.25" y="68">column_name</text>
+ </g>
+ <path d="M262 64h10"></path>
+ <path d="M272 64h10"></path>
+ <g class="non-terminal ">
+ <path d="M282 64h0"></path>
+ <path d="M378.5 64h0"></path>
+ <rect x="282" y="53" width="96.5" height="22"></rect>
+ <text x="330.25" y="68">data_type</text>
+ </g>
+ </g>
+ <path d="M378.5 64h10"></path>
+ <path d="M148.5 64a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M148.5 94h100.75"></path>
+ <path d="M277.75 94h100.75"></path>
+ <rect x="249.25" y="83" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="263.5" y="98">,</text>
+ </g>
+ <path d="M378.5 94a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path>
+ </g>
+ <path d="M388.5 64h10"></path>
+ <g>
+ <path d="M398.5 64h0"></path>
+ <path d="M467 64h0"></path>
+ <path d="M398.5 64a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M418.5 44h28.5"></path>
+ </g>
+ <path d="M447 44a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M398.5 64h20"></path>
+ <g class="terminal ">
+ <path d="M418.5 64h0"></path>
+ <path d="M447 64h0"></path>
+ <rect x="418.5" y="53" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="432.75" y="68">)</text>
+ </g>
+ <path d="M447 64h20"></path>
+ </g>
+ </g>
+ <g class="comment ">
+ <path d="M50 28h0"></path>
+ <path d="M235 28h0"></path>
+ <text x="142.5" y="25" class="comment">column_definition_or_list</text>
+ </g>
+ </g>
+ <path d="M477 64h10"></path>
+ <path d="M 487 64 h 20 m 0 -10 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
+</div>
+</div>
+<div class="paragraph">
+<p>Referenced by:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="/docs/3.0.0-alpha/sql-reference/ddl#alter-table">ALTER TABLE</a></p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="column_definition">column_definition</h2>
+<div class="sectionbody">
+<div class="imageblock">
+<div class="content">
+<svg class="railroad-diagram" width="912" height="111" viewBox="0 0 912 111" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 62v20m0 -10h20"></path>
+ </g>
+ <path d="M40 72h10"></path>
+ <g>
+ <path d="M50 72h0"></path>
+ <path d="M862 72h0"></path>
+ <rect x="50" y="36" width="812" height="55" rx="10" ry="10" class="group-box"></rect>
+ <g>
+ <path d="M50 72h10"></path>
+ <path d="M852 72h10"></path>
+ <g class="non-terminal ">
+ <path d="M60 72h0"></path>
+ <path d="M168 72h0"></path>
+ <rect x="60" y="61" width="108" height="22"></rect>
+ <text x="114" y="76">column_name</text>
+ </g>
+ <path d="M168 72h10"></path>
+ <path d="M178 72h10"></path>
+ <g class="terminal ">
+ <path d="M188 72h0"></path>
+ <path d="M280 72h0"></path>
+ <rect x="188" y="61" width="92" height="22" rx="10" ry="10"></rect>
+ <text x="234" y="76">DATA TYPE</text>
+ </g>
+ <path d="M280 72h10"></path>
+ <g>
+ <path d="M290 72h0"></path>
+ <path d="M476 72h0"></path>
+ <path d="M290 72a10 10 0 0 0 10 -10v-8a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M310 44h146"></path>
+ </g>
+ <path d="M456 44a10 10 0 0 1 10 10v8a10 10 0 0 0 10 10"></path>
+ <path d="M290 72h20"></path>
+ <g>
+ <path d="M310 72h0"></path>
+ <path d="M456 72h0"></path>
+ <g>
+ <path d="M310 72h0"></path>
+ <path d="M394 72h0"></path>
+ <path d="M310 72a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M330 52h44"></path>
+ </g>
+ <path d="M374 52a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M310 72h20"></path>
+ <g class="terminal ">
+ <path d="M330 72h0"></path>
+ <path d="M374 72h0"></path>
+ <rect x="330" y="61" width="44" height="22" rx="10" ry="10"></rect>
+ <text x="352" y="76">NOT</text>
+ </g>
+ <path d="M374 72h20"></path>
+ </g>
+ <path d="M394 72h10"></path>
+ <g class="terminal ">
+ <path d="M404 72h0"></path>
+ <path d="M456 72h0"></path>
+ <rect x="404" y="61" width="52" height="22" rx="10" ry="10"></rect>
+ <text x="430" y="76">NULL</text>
+ </g>
+ </g>
+ <path d="M456 72h20"></path>
+ </g>
+ <g>
+ <path d="M476 72h0"></path>
+ <path d="M736 72h0"></path>
+ <path d="M476 72a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M496 52h220"></path>
+ </g>
+ <path d="M716 52a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M476 72h20"></path>
+ <g>
+ <path d="M496 72h0"></path>
+ <path d="M716 72h0"></path>
+ <g class="terminal ">
+ <path d="M496 72h0"></path>
+ <path d="M572 72h0"></path>
+ <rect x="496" y="61" width="76" height="22" rx="10" ry="10"></rect>
+ <text x="534" y="76">DEFAULT</text>
+ </g>
+ <path d="M572 72h10"></path>
+ <path d="M582 72h10"></path>
+ <g class="non-terminal ">
+ <path d="M592 72h0"></path>
+ <path d="M716 72h0"></path>
+ <rect x="592" y="61" width="124" height="22"></rect>
+ <text x="654" y="76">literal_value</text>
+ </g>
+ </g>
+ <path d="M716 72h20"></path>
+ </g>
+ <g>
+ <path d="M736 72h0"></path>
+ <path d="M852 72h0"></path>
+ <path d="M736 72a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M756 52h76"></path>
+ </g>
+ <path d="M832 52a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M736 72h20"></path>
+ <g class="terminal ">
+ <path d="M756 72h0"></path>
+ <path d="M832 72h0"></path>
+ <rect x="756" y="61" width="76" height="22" rx="10" ry="10"></rect>
+ <text x="794" y="76">PRIMARY</text>
+ </g>
+ <path d="M832 72h20"></path>
+ </g>
+ </g>
+ <g class="comment ">
+ <path d="M50 28h0"></path>
+ <path d="M179 28h0"></path>
+ <text x="114.5" y="25" class="comment">column_definition</text>
+ </g>
+ </g>
+ <path d="M862 72h10"></path>
+ <path d="M 872 72 h 20 m 0 -10 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
+</div>
+</div>
+<div class="paragraph">
+<p>Referenced by:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="/docs/3.0.0-alpha/sql-reference/ddl#create-table">CREATE TABLE</a></p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="column_list">column_list</h2>
+<div class="sectionbody">
+<div class="imageblock">
+<div class="content">
+<svg class="railroad-diagram" width="410.5" height="133" viewBox="0 0 410.5 133" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 54v20m0 -10h20"></path>
+ </g>
+ <path d="M40 64h10"></path>
+ <g>
+ <path d="M50 64h0"></path>
+ <path d="M360.5 64h0"></path>
+ <rect x="50" y="36" width="310.5" height="77" rx="10" ry="10" class="group-box"></rect>
+ <g>
+ <path d="M50 64h10"></path>
+ <path d="M350.5 64h10"></path>
+ <g>
+ <path d="M60 64h0"></path>
+ <path d="M128.5 64h0"></path>
+ <path d="M60 64a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M80 44h28.5"></path>
+ </g>
+ <path d="M108.5 44a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M60 64h20"></path>
+ <g class="terminal ">
+ <path d="M80 64h0"></path>
+ <path d="M108.5 64h0"></path>
+ <rect x="80" y="53" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="94.25" y="68">(</text>
+ </g>
+ <path d="M108.5 64h20"></path>
+ </g>
+ <path d="M128.5 64h10"></path>
+ <g>
+ <path d="M138.5 64h0"></path>
+ <path d="M272 64h0"></path>
+ <path d="M138.5 64h10"></path>
+ <g class="non-terminal ">
+ <path d="M148.5 64h0"></path>
+ <path d="M262 64h0"></path>
+ <rect x="148.5" y="53" width="113.5" height="22"></rect>
+ <text x="205.25" y="68">column_name</text>
+ </g>
+ <path d="M262 64h10"></path>
+ <path d="M148.5 64a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M148.5 94h42.5"></path>
+ <path d="M219.5 94h42.5"></path>
+ <rect x="191" y="83" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="205.25" y="98">,</text>
+ </g>
+ <path d="M262 94a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path>
+ </g>
+ <path d="M272 64h10"></path>
+ <g>
+ <path d="M282 64h0"></path>
+ <path d="M350.5 64h0"></path>
+ <path d="M282 64a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M302 44h28.5"></path>
+ </g>
+ <path d="M330.5 44a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M282 64h20"></path>
+ <g class="terminal ">
+ <path d="M302 64h0"></path>
+ <path d="M330.5 64h0"></path>
+ <rect x="302" y="53" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="316.25" y="68">)</text>
+ </g>
+ <path d="M330.5 64h20"></path>
+ </g>
+ </g>
+ <g class="comment ">
+ <path d="M50 28h0"></path>
+ <path d="M137 28h0"></path>
+ <text x="93.5" y="25" class="comment">column_list</text>
+ </g>
+ </g>
+ <path d="M360.5 64h10"></path>
+ <path d="M 370.5 64 h 20 m 0 -10 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
+</div>
+</div>
+<div class="paragraph">
+<p>Referenced by:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="/docs/3.0.0-alpha/sql-reference/ddl#alter-table">ALTER TABLE</a></p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="constraint">constraint</h2>
+<div class="sectionbody">
+<div class="imageblock">
+<div class="content">
+<svg class="railroad-diagram" width="782" height="133" viewBox="0 0 782 133" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 54v20m0 -10h20"></path>
+ </g>
+ <path d="M40 64h10"></path>
+ <g>
+ <path d="M50 64h0"></path>
+ <path d="M732 64h0"></path>
+ <rect x="50" y="36" width="682" height="77" rx="10" ry="10" class="group-box"></rect>
+ <g>
+ <path d="M50 64h10"></path>
+ <path d="M722 64h10"></path>
+ <g>
+ <path d="M60 64h0"></path>
+ <path d="M360 64h0"></path>
+ <path d="M60 64a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ <g>
+ <path d="M80 44h260"></path>
+ </g>
+ <path d="M340 44a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <path d="M60 64h20"></path>
+ <g>
+ <path d="M80 64h0"></path>
+ <path d="M340 64h0"></path>
+ <g class="terminal ">
+ <path d="M80 64h0"></path>
+ <path d="M180 64h0"></path>
+ <rect x="80" y="53" width="100" height="22" rx="10" ry="10"></rect>
+ <text x="130" y="68">CONSTRAINT</text>
+ </g>
+ <path d="M180 64h10"></path>
+ <path d="M190 64h10"></path>
+ <g class="non-terminal ">
+ <path d="M200 64h0"></path>
+ <path d="M340 64h0"></path>
+ <rect x="200" y="53" width="140" height="22"></rect>
+ <text x="270" y="68">constraint_name</text>
+ </g>
+ </g>
+ <path d="M340 64h20"></path>
+ </g>
+ <path d="M360 64h10"></path>
+ <g class="terminal ">
+ <path d="M370 64h0"></path>
+ <path d="M478 64h0"></path>
+ <rect x="370" y="53" width="108" height="22" rx="10" ry="10"></rect>
+ <text x="424" y="68">PRIMARY KEY</text>
+ </g>
+ <path d="M478 64h10"></path>
+ <path d="M488 64h10"></path>
+ <g class="terminal ">
+ <path d="M498 64h0"></path>
+ <path d="M526 64h0"></path>
+ <rect x="498" y="53" width="28" height="22" rx="10" ry="10"></rect>
+ <text x="512" y="68">(</text>
+ </g>
+ <path d="M526 64h10"></path>
+ <path d="M536 64h10"></path>
+ <g>
+ <path d="M546 64h0"></path>
+ <path d="M674 64h0"></path>
+ <path d="M546 64h10"></path>
+ <g class="non-terminal ">
+ <path d="M556 64h0"></path>
+ <path d="M664 64h0"></path>
+ <rect x="556" y="53" width="108" height="22"></rect>
+ <text x="610" y="68">column_name</text>
+ </g>
+ <path d="M664 64h10"></path>
+ <path d="M556 64a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path>
+ <g class="terminal ">
+ <path d="M556 94h40"></path>
+ <path d="M624 94h40"></path>
+ <rect x="596" y="83" width="28" height="22" rx="10" ry="10"></rect>
+ <text x="610" y="98">,</text>
+ </g>
+ <path d="M664 94a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path>
+ </g>
+ <path d="M674 64h10"></path>
+ <path d="M684 64h10"></path>
+ <g class="terminal ">
+ <path d="M694 64h0"></path>
+ <path d="M722 64h0"></path>
+ <rect x="694" y="53" width="28" height="22" rx="10" ry="10"></rect>
+ <text x="708" y="68">)</text>
+ </g>
+ </g>
+ <g class="comment ">
+ <path d="M50 28h0"></path>
+ <path d="M130 28h0"></path>
+ <text x="90" y="25" class="comment">constraint</text>
+ </g>
+ </g>
+ <path d="M732 64h10"></path>
+ <path d="M 742 64 h 20 m 0 -10 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #eee;
+ }</style>
+</svg>
+</div>
+</div>
+<div class="paragraph">
+<p>Referenced by:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="/docs/3.0.0-alpha/sql-reference/ddl#create-table">CREATE TABLE</a></p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="qualified_table_name">qualified_table_name</h2>
+<div class="sectionbody">
+<div class="imageblock">
+<div class="content">
+<svg class="railroad-diagram" width="394.5" height="114" viewBox="0 0 394.5 114" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g transform="translate(.5 .5)">
+ <g>
+ <path d="M20 45v20m0 -10h20"></path>
+ </g>
+ <path d="M40 55h10"></path>
+ <g>
+ <path d="M50 55h0"></path>
+ <path d="M344.5 55h0"></path>
+ <rect x="50" y="36" width="294.5" height="58" rx="10" ry="10" class="group-box"></rect>
+ <g>
+ <path d="M50 55h10"></path>
+ <path d="M334.5 55h10"></path>
+ <g>
+ <path d="M60 55h0"></path>
+ <path d="M219.5 55h0"></path>
+ <path d="M60 55h20"></path>
+ <g>
+ <path d="M80 55h119.5"></path>
+ </g>
+ <path d="M199.5 55h20"></path>
+ <path d="M60 55a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+ <g>
+ <path d="M80 75h0"></path>
+ <path d="M199.5 75h0"></path>
+ <g class="non-terminal ">
+ <path d="M80 75h0"></path>
+ <path d="M151 75h0"></path>
+ <rect x="80" y="64" width="71" height="22"></rect>
+ <text x="115.5" y="79">schema</text>
+ </g>
+ <path d="M151 75h10"></path>
+ <path d="M161 75h10"></path>
+ <g class="terminal ">
+ <path d="M171 75h0"></path>
+ <path d="M199.5 75h0"></path>
+ <rect x="171" y="64" width="28.5" height="22" rx="10" ry="10"></rect>
+ <text x="185.25" y="79">.</text>
+ </g>
+ </g>
+ <path d="M199.5 75a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+ </g>
+ <path d="M219.5 55h10"></path>
+ <g class="non-terminal ">
+ <path d="M229.5 55h0"></path>
+ <path d="M334.5 55h0"></path>
+ <rect x="229.5" y="44" width="105" height="22"></rect>
+ <text x="282" y="59">table_name</text>
+ </g>
+ </g>
+ <g class="comment ">
+ <path d="M50 28h0"></path>
+ <path d="M200 28h0"></path>
+ <text x="125" y="25" class="comment">qualified_table_name</text>
+ </g>
+ </g>
+ <path d="M344.5 55h10"></path>
+ <path d="M 354.5 55 h 20 m 0 -10 v 20"></path>
+ </g>
+ <style>
+ svg {
+ background-color: hsl(0,0%,100%);
+ }
+ path {
+ stroke-width: 2;
+ stroke: black;
+ fill: rgba(0,0,0,0);
+ }
+ text {
+ font: bold 14px monospace;
+ text-anchor: middle;
+ white-space: pre;
+ }
+ text.diagram-text {
+ font-size: 12px;
+ }
+ text.diagram-arrow {
+ font-size: 16px;
+ }
+ text.label {
+ text-anchor: start;
+ }
+ text.comment {
+ font: italic 12px monospace;
+ }
+ g.non-terminal text {
+ /*font-style: italic;*/
+ }
+ rect {
+ stroke-width: 2;
+ stroke: black;
+ fill: hsl(0,0%,100%);
+ }
+ rect.group-box {
+ stroke: gray;
+ stroke-dasharray: 10 5;
+ fill: none;
+ }
+ path.diagram-text {
+ stroke-width: 2;
+ stroke: black;
+ fill: white;
+ cursor: help;
+ }
+ g.diagram-text:hover path.diagram-text {
+ fill: #ffa500;
+ }</style>
+</svg>
+</div>
+</div>
+<div class="paragraph">
+<p>Referenced by:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="/docs/3.0.0-alpha/sql-reference/ddl#сreate-table">CREATE TABLE</a></p>
+</li>
+<li>
+<p><a href="/docs/3.0.0-alpha/sql-reference/ddl#alter-table">ALTER TABLE</a></p>
+</li>
+<li>
+<p><a href="/docs/3.0.0-alpha/sql-reference/ddl#drop-table">DROP TABLE</a></p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+ <div class="copyright">
+ © 2022 The Apache Software Foundation.<br/>
+Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
+
+</div>
+
+ </article>
+ <nav class="right-nav" data-swiftype-index='false'>
+ <div class="toc-wrapper">
+ <ul class="sectlevel1">
+<li><a href="#create-table">CREATE TABLE</a></li>
+<li><a href="#alter-table">ALTER TABLE</a></li>
+<li><a href="#drop-table">DROP TABLE</a></li>
+<li><a href="#grammar-reference">Grammar Reference</a>
+<ul class="sectlevel1">
+<li><a href="#column_definition_or_list">column_definition_or_list</a></li>
+<li><a href="#column_definition">column_definition</a></li>
+<li><a href="#column_list">column_list</a></li>
+<li><a href="#constraint">constraint</a></li>
+<li><a href="#qualified_table_name">qualified_table_name</a></li>
+</ul>
+</li>
+</ul>
+ </div>
+
+
+ <nav class="promo-nav">
+ <!--#include virtual="/includes/docs_rightnav_promotion.html" -->
+ <a href="#" data-trigger-bugyard-feedback="true" id="doc-feedback-btn">Docs Feedback</a>
+ </nav>
+
+</nav>
+
+</section>
+<script type='module' src='/assets/js/code-copy-to-clipboard.js' async crossorigin></script>
+
+ <script>
+ // inits deep anchors -- needs to be done here because of https://www.bryanbraun.com/anchorjs/#dont-run-it-too-late
+ anchors.add('.page-docs h1, .page-docs h2, .page-docs h3:not(.discrete), .page-docs h4, .page-docs h5');
+ anchors.options = {
+ placement: 'right',
+ visible: 'always'
+ };
+ </script>
+
+ <script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script>
+ <script>
+ docsearch({
+ // Your apiKey and indexName will be given to you once
+ // we create your config
+ apiKey: '3eee686c0ebe39eff3baeb18c56fa5f8',
+ indexName: 'apache_ignite',
+ // Replace inputSelector with a CSS selector
+ // matching your search input
+ inputSelector: '#search-input',
+ // algoliaOptions: { 'facetFilters': ["version:$VERSION"] },
+
+ // Set debug to true to inspect the dropdown
+ debug: false,
+ });
+ </script>
+<script type='module' src='/assets/js/index.js?1643403254' async crossorigin></script>
+<script type='module' src='/assets/js/versioning.js?1643403254' async crossorigin></script>
+
+<link rel="stylesheet" href="/assets/css/styles.css?1643403254" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1643403254"></noscript>
+
+<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css"></noscript>
+
+
+</body>
+
+</html>
diff --git a/docs/3.0.0-alpha/sql/jdbc-driver.html b/docs/3.0.0-alpha/sql-reference/dml.html
similarity index 79%
copy from docs/3.0.0-alpha/sql/jdbc-driver.html
copy to docs/3.0.0-alpha/sql-reference/dml.html
index 0fea237..a3aa8e3 100644
--- a/docs/3.0.0-alpha/sql/jdbc-driver.html
+++ b/docs/3.0.0-alpha/sql-reference/dml.html
@@ -50,9 +50,9 @@
<meta name="ignite-version" content="3.0.0-alpha" />
- <title>JDBC Driver | Ignite Documentation</title>
+ <title>Data Manipulation Language (DML) | Ignite Documentation</title>
- <link rel="canonical" href="/docs/3.0.0-alpha/sql/jdbc-driver" />
+ <link rel="canonical" href="/docs/3.0.0-alpha/sql-reference/dml" />
<META NAME="ROBOTS" CONTENT="NOINDEX" />
@@ -182,15 +182,100 @@
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine"
+ class=''
+ >Introduction</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/jdbc-driver"
+ class=''
+ >JDBC Driver</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" class='' >Calcite-Based SQL Engine</a>
+
+
+ </nav>
</li>
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle expanded '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group expanded'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/ddl"
+ class=''
+ >Data Definition Language (DDL)</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/jdbc-driver" class='active' >JDBC Driver</a>
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/dml"
+ class='active'
+ >Data Manipulation Language (DML)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/operators-and-functions"
+ class=''
+ >Supported Operators and Functions</a>
+
+ </li>
+
+
+
+ </nav>
</li>
@@ -215,121 +300,112 @@
</li>
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/transactions/performing-transactions" class='' >Performing Transactions</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/table-views" class='' >Table Views</a>
+
+ </li>
+
</nav>
<div class="left-nav__overlay"></div>
<article data-swiftype-index='true'>
- <a class='edit-link' href="https://github.com/apache/ignite/tree/IGNITE-7595/docs/_docs/sql/jdbc-driver.adoc" target="_blank">Edit</a>
+ <a class='edit-link' href="https://github.com/apache/ignite/tree/IGNITE-7595/docs/_docs/sql-reference/dml.adoc" target="_blank">Edit</a>
- <h1>JDBC Driver</h1>
+ <h1>Data Manipulation Language (DML)</h1>
<div id="preamble">
<div class="sectionbody">
<div class="paragraph">
-<p>Apache Ignite is shipped with JDBC driver that allows processing of distributed data using standard SQL statements like <code>SELECT</code>, <code>INSERT</code>, <code>UPDATE</code>, or <code>DELETE</code> directly from the JDBC side.</p>
+<p>This section walks you through all data manipulation language (DML) commands supported by Apache Ignite 3.0 Alpha 4.</p>
</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<div class="title">Warning</div>
+</td>
+<td class="content">
+Currently, <code>WITH</code> and <code>MERGE</code> commands are not supported.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="select">SELECT</h2>
+<div class="sectionbody">
<div class="paragraph">
-<p>WARNING:</p>
+<p>Retrieves data from a table or multiple tables.</p>
</div>
<div class="listingblock">
<div class="content">
-<pre>This Alpha release implementation of JDBC driver does not support the following functionality:
-
-* SSL/TLS connection;
-* Multiple Endpoints;
-* Partition Awareness;
-* `CREATE TABLE`, `ALTER TABLE`, `WITH`, and `MERGE` commands.</pre>
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">SELECT</span> <span class="p">[</span> <span class="n">hintComment</span> <span class="p">]</span> <span class="p">[</span> <span class="n">STREAM</span> <span class="p">]</span> <span class="p">[</span> <span class="k">ALL</span> <span class="o">|</span> <span class="k">DISTINCT</span> <span class="p">]</span>
+ <span class="p">{</span> <span class="o">*</span> <span class="o">|</span> <span class="n">projectItem</span> <span class="p">[,</span> <span class="n">projectItem</span> <span class="p">]</span><span class="o">*</span> <span class="p">}</span>
+<span class="k">FROM</span> <span class="n">tableExpression</span>
+<span class="p">[</span> <span class="k">WHERE</span> <span class="n">booleanExpression</span> <span class="p">]</span>
+<span class="p">[</span> <span class="k">GROUP</span> <span class="k">BY</span> <span class="p">{</span> <span class="n">groupItem</span> <span class="p">[,</span> <span class="n">groupItem</span> <span class="p">]</span><span class="o">*</span> <span class="p">}</span> <span class="p">]</span>
+<span class="p">[</span> <span class="k">HAVING</span> <span class="n">booleanExpression</span> <span class="p">]</span></code></pre>
</div>
</div>
</div>
</div>
<div class="sect1">
-<h2 id="setting-up">Setting Up</h2>
+<h2 id="insert">INSERT</h2>
<div class="sectionbody">
<div class="paragraph">
-<p>The name of the driver’s class is <code>org.apache.ignite.IgniteJdbcThinDriver</code>. For instance, this is how you can open a JDBC connection to the cluster node listening on IP address <code>192.168.0.50</code>:</p>
+<p>Inserts data into a table.</p>
</div>
<div class="listingblock">
<div class="content">
-<pre class="rouge highlight"><code data-lang="java"><span class="c1">// Load JDBC drivers.</span>
-<span class="nc">ServiceLoader</span><span class="o">.</span><span class="na">load</span><span class="o">(</span><span class="n">java</span><span class="o">.</span><span class="na">sql</span><span class="o">.</span><span class="na">Driver</span><span class="o">.</span><span class="na">class</span><span class="o">);</span>
-
-<span class="c1">// Open the JDBC connection.</span>
-<span class="nc">Connection</span> <span class="n">conn</span> <span class="o">=</span> <span class="nc">DriverManager</span><span class="o">.</span><span class="na">getConnection</span><span class="o">(</span><span class="s">"jdbc:ignite:thin://127.0.1.1:10800"</span><span class="o">);</span></code></pre>
+<pre class="rouge highlight"><code data-lang="sql"><span class="p">{</span> <span class="k">INSERT</span> <span class="p">}</span> <span class="k">INTO</span> <span class="n">tablePrimary</span>
+<span class="p">[</span> <span class="s1">'('</span> <span class="k">column</span> <span class="p">[,</span> <span class="k">column</span> <span class="p">]</span><span class="o">*</span> <span class="s1">')'</span> <span class="p">]</span>
+<span class="n">query</span></code></pre>
</div>
</div>
-<div class="paragraph">
-<p>The driver connects to one of the cluster nodes and forwards all the queries to it for final execution. The node handles the query distribution and the result’s aggregations. Then the result is sent back to the client application.</p>
</div>
+</div>
+<div class="sect1">
+<h2 id="update">UPDATE</h2>
+<div class="sectionbody">
<div class="paragraph">
-<p>The JDBC connection string may be formatted with one of two patterns: <code>URL query</code> or <code>semicolon</code>:</p>
+<p>Updates data in a table.</p>
</div>
<div class="listingblock">
<div class="content">
-<pre class="rouge highlight"><code data-lang="java"><span class="c1">// URL query pattern</span>
-<span class="nl">jdbc:ignite:thin:</span><span class="c1">//<hostAndPortRange0>[,<hostAndPortRange1>]...[,<hostAndPortRangeN>][/schema][?<params>]</span>
-
-<span class="n">hostAndPortRange</span> <span class="o">:=</span> <span class="n">host</span><span class="o">[:</span><span class="n">port_from</span><span class="o">[..</span><span class="na">port_to</span><span class="o">]]</span>
-
-<span class="n">params</span> <span class="o">:=</span> <span class="n">param1</span><span class="o">=</span><span class="n">value1</span><span class="o">[&</span><span class="n">param2</span><span class="o">=</span><span class="n">value2</span><span class="o">]...[&</span><span class="n">paramN</span><span class="o">=</span><span class="n">valueN</span><span class="o">]</span>
-
-<span class="c1">// Semicolon pattern</span>
-<span class="nl">jdbc:ignite:thin:</span><span class="c1">//<hostAndPortRange0>[,<hostAndPortRange1>]...[,<hostAndPortRangeN>][;schema=<schema_name>][;param1=value1]...[;paramN=valueN]</span></code></pre>
-</div>
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">UPDATE</span> <span class="n">tablePrimary</span>
+<span class="k">SET</span> <span class="n">assign</span> <span class="p">[,</span> <span class="n">assign</span> <span class="p">]</span><span class="o">*</span>
+<span class="p">[</span> <span class="k">WHERE</span> <span class="n">booleanExpression</span> <span class="p">]</span></code></pre>
</div>
-<div class="ulist">
-<ul>
-<li>
-<p><code>host</code> is required and defines the host of the cluster node to connect to.</p>
-</li>
-<li>
-<p><code>port_from</code> is the beginning of the port range to use to open the connection. 10800 is used by default if this parameter is omitted.</p>
-</li>
-<li>
-<p><code>port_to</code> is optional. It is set to the <code>port_from</code> value by default if this parameter is omitted.</p>
-</li>
-<li>
-<p><code>schema</code> is the schema name to access. PUBLIC is used by default. This name should correspond to the SQL ANSI-99 standard. Non-quoted identifiers are not case sensitive. Quoted identifiers are case sensitive. When semicolon format is used, the schema may be defined as a parameter with name schema.</p>
-</li>
-<li>
-<p><code><params></code> are optional.</p>
-</li>
-</ul>
</div>
</div>
</div>
<div class="sect1">
-<h2 id="running-an-example">Running an Example</h2>
+<h2 id="delete">DELETE</h2>
<div class="sectionbody">
<div class="paragraph">
-<p>Examples are shipped as a separate Maven project, which is located in the <code>examples</code> folder. <code>SqlJdbcExample</code> demonstrates the usage of the Apache Ignite JDBC driver.</p>
+<p>Deletes data from a table.</p>
</div>
-<div class="paragraph">
-<p>To run <code>SqlJdbcExample</code>, perform the following steps:</p>
-</div>
-<div class="olist arabic">
-<ol class="arabic">
-<li>
-<p>Import the examples project into you IDE;</p>
-</li>
-<li>
-<p>Start a server node using the CLI tool:</p>
<div class="listingblock">
<div class="content">
-<pre class="rouge highlight"><code data-lang="shell">ignite node start <span class="nt">--config</span><span class="o">=</span><span class="nv">$IGNITE_HOME</span>/examples/config/ignite-config.json my-first-node</code></pre>
-</div>
+<pre class="rouge highlight"><code data-lang="sql"><span class="k">DELETE</span> <span class="k">FROM</span> <span class="n">tablePrimary</span> <span class="p">[</span> <span class="p">[</span> <span class="k">AS</span> <span class="p">]</span> <span class="k">alias</span> <span class="p">]</span>
+<span class="p">[</span> <span class="k">WHERE</span> <span class="n">booleanExpression</span> <span class="p">]</span></code></pre>
</div>
-</li>
-<li>
-<p>Run <code>SqlJdbcExample</code> in the IDE.</p>
-</li>
-</ol>
</div>
</div>
</div>
<div class="copyright">
- © 2021 The Apache Software Foundation.<br/>
+ © 2022 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
</div>
@@ -338,8 +414,10 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
<nav class="right-nav" data-swiftype-index='false'>
<div class="toc-wrapper">
<ul class="sectlevel1">
-<li><a href="#setting-up">Setting Up</a></li>
-<li><a href="#running-an-example">Running an Example</a></li>
+<li><a href="#select">SELECT</a></li>
+<li><a href="#insert">INSERT</a></li>
+<li><a href="#update">UPDATE</a></li>
+<li><a href="#delete">DELETE</a></li>
</ul>
</div>
@@ -379,11 +457,11 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
debug: false,
});
</script>
-<script type='module' src='/assets/js/index.js?1639728293' async crossorigin></script>
-<script type='module' src='/assets/js/versioning.js?1639728293' async crossorigin></script>
+<script type='module' src='/assets/js/index.js?1643403254' async crossorigin></script>
+<script type='module' src='/assets/js/versioning.js?1643403254' async crossorigin></script>
-<link rel="stylesheet" href="/assets/css/styles.css?1639728293" media="print" onload="this.media='all'">
-<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1639728293"></noscript>
+<link rel="stylesheet" href="/assets/css/styles.css?1643403254" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1643403254"></noscript>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" media="print" onload="this.media='all'">
<noscript><link media="all" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css"></noscript>
diff --git a/docs/3.0.0-alpha/sql/calcite-based-sql-engine.html b/docs/3.0.0-alpha/sql-reference/operators-and-functions.html
similarity index 82%
copy from docs/3.0.0-alpha/sql/calcite-based-sql-engine.html
copy to docs/3.0.0-alpha/sql-reference/operators-and-functions.html
index 66c0c80..17fd595 100644
--- a/docs/3.0.0-alpha/sql/calcite-based-sql-engine.html
+++ b/docs/3.0.0-alpha/sql-reference/operators-and-functions.html
@@ -50,9 +50,9 @@
<meta name="ignite-version" content="3.0.0-alpha" />
- <title>Calcite-Based SQL Engine | Ignite Documentation</title>
+ <title>Supported Operators and Functions | Ignite Documentation</title>
- <link rel="canonical" href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" />
+ <link rel="canonical" href="/docs/3.0.0-alpha/sql-reference/operators-and-functions" />
<META NAME="ROBOTS" CONTENT="NOINDEX" />
@@ -182,15 +182,100 @@
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine"
+ class=''
+ >Introduction</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" class='active' >Calcite-Based SQL Engine</a>
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/jdbc-driver"
+ class=''
+ >JDBC Driver</a>
+
+ </li>
+
+
+
+ </nav>
</li>
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle expanded '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group expanded'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/ddl"
+ class=''
+ >Data Definition Language (DDL)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/dml"
+ class=''
+ >Data Manipulation Language (DML)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/operators-and-functions"
+ class='active'
+ >Supported Operators and Functions</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/jdbc-driver" class='' >JDBC Driver</a>
+
+
+ </nav>
</li>
@@ -215,123 +300,34 @@
</li>
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/transactions/performing-transactions" class='' >Performing Transactions</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/table-views" class='' >Table Views</a>
+
+ </li>
+
</nav>
<div class="left-nav__overlay"></div>
<article data-swiftype-index='true'>
- <a class='edit-link' href="https://github.com/apache/ignite/tree/IGNITE-7595/docs/_docs/sql/calcite-based-sql-engine.adoc" target="_blank">Edit</a>
+ <a class='edit-link' href="https://github.com/apache/ignite/tree/IGNITE-7595/docs/_docs/sql-reference/operators-and-functions.adoc" target="_blank">Edit</a>
- <h1>Calcite-Based SQL Engine</h1>
+ <h1>Supported Operators and Functions</h1>
- <div id="preamble">
-<div class="sectionbody">
-<div class="paragraph">
-<p>This Alpha release introduces new SQL engine based on the Apache Calcite framework to parse and optimize queries and generate execution plans. Previously, it was based on H2 Database.</p>
-</div>
-<div class="paragraph">
-<p>Apache Calcite is a dynamic data management framework, which mainly serves for mediating between applications and one or more data storage locations and data processing engines.
-For more information on Apache Calcite, please see the <a href="https://calcite.apache.org/docs/" target="_blank" rel="noopener">product documentation</a>.</p>
-</div>
-<div class="paragraph">
-<p>Replacing H2 SQL engine with Apache Calcite incorporates the following general improvements:</p>
-</div>
-<div class="ulist">
-<ul>
-<li>
-<p><strong>Wider SQL support</strong>: Apache Calcite, unlike H2, is specifically designed for SQL enablement on top of an arbitrary external data storage;</p>
-</li>
-<li>
-<p><strong>Better optimization algorithms</strong>: Apache Calcite optimizes queries by repeatedly applying planner rules to a relational expression;</p>
-</li>
-<li>
-<p><strong>Higher overall performance</strong>: Calcite offers much higher levels of execution flexibility, as well as higher efficiency in terms of both memory and CPU consumption.</p>
-</li>
-</ul>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="data-manipulation-language-dml">Data Manipulation Language (DML)</h2>
+ <div class="sect1">
+<h2 id="aggregate-functions">Aggregate Functions</h2>
<div class="sectionbody">
-<div class="paragraph">
-<p>This section walks you through all data manipulation language (DML) commands supported by Apache Ignite Alpha 3.</p>
-</div>
-<div class="admonitionblock warning">
-<table>
-<tr>
-<td class="icon">
-<div class="title">Warning</div>
-</td>
-<td class="content">
-Currently, <code>WITH</code> and <code>MERGE</code> commands are not supported.
-</td>
-</tr>
-</table>
-</div>
<div class="sect2">
-<h3 id="select">SELECT</h3>
-<div class="paragraph">
-<p>Retrieves data from a table or multiple tables.</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="k">SELECT</span> <span class="p">[</span> <span class="n">hintComment</span> <span class="p">]</span> <span class="p">[</span> <span class="n">STREAM</span> <span class="p">]</span> <span class="p">[</span> <span class="k">ALL</span> <span class="o">|</span> <span class="k">DISTINCT</span> <span class="p">]</span>
- <span class="err">{</span> <span class="o">*</span> <span class="o">|</span> <span class="n">projectItem</span> <span class="p">[,</span> <span class="n">projectItem</span> <span class="p">]</span><span class="o">*</span> <span class="err">}</span>
-<span class="k">FROM</span> <span class="n">tableExpression</span>
-<span class="p">[</span> <span class="k">WHERE</span> <span class="n">booleanExpression</span> <span class="p">]</span>
-<span class="p">[</span> <span class="k">GROUP</span> <span class="k">BY</span> <span class="err">{</span> <span class="n">groupItem</span> <span class="p">[,</span> <span class="n">groupItem</span> <span class="p">]</span><span class="o">*</span> <span class="err">}</span> <span class="p">]</span>
-<span class="p">[</span> <span class="k">HAVING</span> <span class="n">booleanExpression</span> <span class="p">]</span></code></pre>
-</div>
-</div>
-</div>
-<div class="sect2">
-<h3 id="insert">INSERT</h3>
-<div class="paragraph">
-<p>Inserts data into a table.</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="err">{</span> <span class="k">INSERT</span> <span class="o">|</span> <span class="n">UPSERT</span> <span class="err">}</span> <span class="k">INTO</span> <span class="n">tablePrimary</span>
-<span class="p">[</span> <span class="s1">'('</span> <span class="k">column</span> <span class="p">[,</span> <span class="k">column</span> <span class="p">]</span><span class="o">*</span> <span class="s1">')'</span> <span class="p">]</span>
-<span class="n">query</span></code></pre>
-</div>
-</div>
-</div>
-<div class="sect2">
-<h3 id="update">UPDATE</h3>
-<div class="paragraph">
-<p>Updates data in a table.</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="k">UPDATE</span> <span class="n">tablePrimary</span>
-<span class="k">SET</span> <span class="n">assign</span> <span class="p">[,</span> <span class="n">assign</span> <span class="p">]</span><span class="o">*</span>
-<span class="p">[</span> <span class="k">WHERE</span> <span class="n">booleanExpression</span> <span class="p">]</span></code></pre>
-</div>
-</div>
-</div>
-<div class="sect2">
-<h3 id="delete">DELETE</h3>
-<div class="paragraph">
-<p>Deletes data from a table.</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="k">DELETE</span> <span class="k">FROM</span> <span class="n">tablePrimary</span> <span class="p">[</span> <span class="p">[</span> <span class="k">AS</span> <span class="p">]</span> <span class="k">alias</span> <span class="p">]</span>
-<span class="p">[</span> <span class="k">WHERE</span> <span class="n">booleanExpression</span> <span class="p">]</span></code></pre>
-</div>
-</div>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="supported-operators-and-functions">Supported Operators and Functions</h2>
-<div class="sectionbody">
-<div class="sect2">
-<h3 id="aggregate-functions">Aggregate Functions</h3>
-<div class="sect3">
-<h4 id="count">COUNT</h4>
+<h3 id="count">COUNT</h3>
<div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="sql"><span class="k">COUNT</span><span class="p">(</span> <span class="p">[</span> <span class="k">ALL</span> <span class="o">|</span> <span class="k">DISTINCT</span> <span class="p">]</span> <span class="n">value</span> <span class="p">[,</span> <span class="n">value</span> <span class="p">]</span><span class="o">*</span><span class="p">)</span></code></pre>
@@ -341,8 +337,8 @@ Currently, <code>WITH</code> and <code>MERGE</code> commands are not supported.
<p>Returns the number of input rows for which value is not null (wholly not null if value is composite).</p>
</div>
</div>
-<div class="sect3">
-<h4 id="avg">AVG</h4>
+<div class="sect2">
+<h3 id="avg">AVG</h3>
<div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="sql"><span class="k">AVG</span><span class="p">(</span> <span class="p">[</span> <span class="k">ALL</span> <span class="o">|</span> <span class="k">DISTINCT</span> <span class="p">]</span> <span class="nb">numeric</span><span class="p">)</span></code></pre>
@@ -352,8 +348,8 @@ Currently, <code>WITH</code> and <code>MERGE</code> commands are not supported.
<p>Returns the average (arithmetic mean) of numeric across all input values.</p>
</div>
</div>
-<div class="sect3">
-<h4 id="sum">SUM</h4>
+<div class="sect2">
+<h3 id="sum">SUM</h3>
<div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="sql"><span class="k">SUM</span><span class="p">(</span> <span class="p">[</span> <span class="k">ALL</span> <span class="o">|</span> <span class="k">DISTINCT</span> <span class="p">]</span> <span class="nb">numeric</span><span class="p">)</span></code></pre>
@@ -363,8 +359,8 @@ Currently, <code>WITH</code> and <code>MERGE</code> commands are not supported.
<p>Returns the sum of numeric across all input values.</p>
</div>
</div>
-<div class="sect3">
-<h4 id="min">MIN</h4>
+<div class="sect2">
+<h3 id="min">MIN</h3>
<div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="sql"><span class="k">MIN</span><span class="p">(</span> <span class="p">[</span> <span class="k">ALL</span> <span class="o">|</span> <span class="k">DISTINCT</span> <span class="p">]</span> <span class="n">value</span><span class="p">)</span></code></pre>
@@ -374,8 +370,8 @@ Currently, <code>WITH</code> and <code>MERGE</code> commands are not supported.
<p>Returns the minimum value of value across all input values.</p>
</div>
</div>
-<div class="sect3">
-<h4 id="max">MAX</h4>
+<div class="sect2">
+<h3 id="max">MAX</h3>
<div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="sql"><span class="k">MAX</span><span class="p">(</span> <span class="p">[</span> <span class="k">ALL</span> <span class="o">|</span> <span class="k">DISTINCT</span> <span class="p">]</span> <span class="n">value</span><span class="p">)</span></code></pre>
@@ -385,8 +381,8 @@ Currently, <code>WITH</code> and <code>MERGE</code> commands are not supported.
<p>Returns the maximum value of value across all input values.</p>
</div>
</div>
-<div class="sect3">
-<h4 id="string_agg">STRING_AGG</h4>
+<div class="sect2">
+<h3 id="string_agg">STRING_AGG</h3>
<div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="sql"><span class="n">STRING_AGG</span><span class="p">(</span> <span class="n">value</span> <span class="p">[,</span> <span class="n">separator</span> <span class="p">]</span> <span class="p">[</span> <span class="k">ORDER</span> <span class="k">BY</span> <span class="p">...])</span></code></pre>
@@ -396,8 +392,8 @@ Currently, <code>WITH</code> and <code>MERGE</code> commands are not supported.
<p>Concatenates the values of string expressions and places separator values between them.</p>
</div>
</div>
-<div class="sect3">
-<h4 id="string_concat">STRING_CONCAT</h4>
+<div class="sect2">
+<h3 id="string_concat">STRING_CONCAT</h3>
<div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="sql"><span class="n">STRING_CONCAT</span><span class="p">(</span><span class="n">string1</span><span class="p">,</span> <span class="n">string2</span><span class="p">,</span> <span class="p">...</span> <span class="n">stringN</span><span class="p">)</span></code></pre>
@@ -408,10 +404,12 @@ Currently, <code>WITH</code> and <code>MERGE</code> commands are not supported.
</div>
</div>
</div>
+</div>
+<div class="sect1">
+<h2 id="functions">Functions</h2>
+<div class="sectionbody">
<div class="sect2">
-<h3 id="functions">Functions</h3>
-<div class="sect3">
-<h4 id="json">JSON</h4>
+<h3 id="json">JSON</h3>
<div class="ulist">
<ul>
<li>
@@ -519,8 +517,8 @@ Currently, <code>WITH</code> and <code>MERGE</code> commands are not supported.
</ul>
</div>
</div>
-<div class="sect3">
-<h4 id="numeric">NUMERIC</h4>
+<div class="sect2">
+<h3 id="numeric">NUMERIC</h3>
<div class="ulist">
<ul>
<li>
@@ -616,8 +614,8 @@ Currently, <code>WITH</code> and <code>MERGE</code> commands are not supported.
</ul>
</div>
</div>
-<div class="sect3">
-<h4 id="general">GENERAL</h4>
+<div class="sect2">
+<h3 id="general">GENERAL</h3>
<div class="ulist">
<ul>
<li>
@@ -641,8 +639,8 @@ Currently, <code>WITH</code> and <code>MERGE</code> commands are not supported.
</ul>
</div>
</div>
-<div class="sect3">
-<h4 id="timestamp">TIMESTAMP</h4>
+<div class="sect2">
+<h3 id="timestamp">TIMESTAMP</h3>
<div class="ulist">
<ul>
<li>
@@ -665,9 +663,8 @@ Currently, <code>WITH</code> and <code>MERGE</code> commands are not supported.
</div>
</div>
</div>
-</div>
<div class="copyright">
- © 2021 The Apache Software Foundation.<br/>
+ © 2022 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
</div>
@@ -676,18 +673,8 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
<nav class="right-nav" data-swiftype-index='false'>
<div class="toc-wrapper">
<ul class="sectlevel1">
-<li><a href="#data-manipulation-language-dml">Data Manipulation Language (DML)</a>
-<ul class="sectlevel2">
-<li><a href="#select">SELECT</a></li>
-<li><a href="#insert">INSERT</a></li>
-<li><a href="#update">UPDATE</a></li>
-<li><a href="#delete">DELETE</a></li>
-</ul>
-</li>
-<li><a href="#supported-operators-and-functions">Supported Operators and Functions</a>
-<ul class="sectlevel2">
<li><a href="#aggregate-functions">Aggregate Functions</a>
-<ul class="sectlevel3">
+<ul class="sectlevel2">
<li><a href="#count">COUNT</a></li>
<li><a href="#avg">AVG</a></li>
<li><a href="#sum">SUM</a></li>
@@ -698,7 +685,7 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
</ul>
</li>
<li><a href="#functions">Functions</a>
-<ul class="sectlevel3">
+<ul class="sectlevel2">
<li><a href="#json">JSON</a></li>
<li><a href="#numeric">NUMERIC</a></li>
<li><a href="#general">GENERAL</a></li>
@@ -706,8 +693,6 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
</ul>
</li>
</ul>
-</li>
-</ul>
</div>
@@ -746,11 +731,11 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
debug: false,
});
</script>
-<script type='module' src='/assets/js/index.js?1639728293' async crossorigin></script>
-<script type='module' src='/assets/js/versioning.js?1639728293' async crossorigin></script>
+<script type='module' src='/assets/js/index.js?1643403254' async crossorigin></script>
+<script type='module' src='/assets/js/versioning.js?1643403254' async crossorigin></script>
-<link rel="stylesheet" href="/assets/css/styles.css?1639728293" media="print" onload="this.media='all'">
-<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1639728293"></noscript>
+<link rel="stylesheet" href="/assets/css/styles.css?1643403254" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1643403254"></noscript>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" media="print" onload="this.media='all'">
<noscript><link media="all" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css"></noscript>
diff --git a/docs/3.0.0-alpha/sql/calcite-based-sql-engine.html b/docs/3.0.0-alpha/sql/calcite-based-sql-engine.html
index 66c0c80..0c4f34f 100644
--- a/docs/3.0.0-alpha/sql/calcite-based-sql-engine.html
+++ b/docs/3.0.0-alpha/sql/calcite-based-sql-engine.html
@@ -50,7 +50,7 @@
<meta name="ignite-version" content="3.0.0-alpha" />
- <title>Calcite-Based SQL Engine | Ignite Documentation</title>
+ <title>Introduction | Ignite Documentation</title>
<link rel="canonical" href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" />
<META NAME="ROBOTS" CONTENT="NOINDEX" />
@@ -182,15 +182,100 @@
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle expanded '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group expanded'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine"
+ class='active'
+ >Introduction</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/jdbc-driver"
+ class=''
+ >JDBC Driver</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" class='active' >Calcite-Based SQL Engine</a>
+
+
+ </nav>
</li>
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/ddl"
+ class=''
+ >Data Definition Language (DDL)</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/jdbc-driver" class='' >JDBC Driver</a>
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/dml"
+ class=''
+ >Data Manipulation Language (DML)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/operators-and-functions"
+ class=''
+ >Supported Operators and Functions</a>
+
+ </li>
+
+
+
+ </nav>
</li>
@@ -215,6 +300,20 @@
</li>
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/transactions/performing-transactions" class='' >Performing Transactions</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/table-views" class='' >Table Views</a>
+
+ </li>
+
</nav>
<div class="left-nav__overlay"></div>
@@ -222,12 +321,10 @@
<article data-swiftype-index='true'>
<a class='edit-link' href="https://github.com/apache/ignite/tree/IGNITE-7595/docs/_docs/sql/calcite-based-sql-engine.adoc" target="_blank">Edit</a>
- <h1>Calcite-Based SQL Engine</h1>
+ <h1>Introduction</h1>
- <div id="preamble">
-<div class="sectionbody">
-<div class="paragraph">
-<p>This Alpha release introduces new SQL engine based on the Apache Calcite framework to parse and optimize queries and generate execution plans. Previously, it was based on H2 Database.</p>
+ <div class="paragraph">
+<p>Apache Ignite 3.0 Alpha introduces new SQL engine based on the Apache Calcite framework to parse and optimize queries and generate execution plans. Previously, it was based on H2 Database.</p>
</div>
<div class="paragraph">
<p>Apache Calcite is a dynamic data management framework, which mainly serves for mediating between applications and one or more data storage locations and data processing engines.
@@ -249,425 +346,8 @@ For more information on Apache Calcite, please see the <a href="https://calcite.
</li>
</ul>
</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="data-manipulation-language-dml">Data Manipulation Language (DML)</h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>This section walks you through all data manipulation language (DML) commands supported by Apache Ignite Alpha 3.</p>
-</div>
-<div class="admonitionblock warning">
-<table>
-<tr>
-<td class="icon">
-<div class="title">Warning</div>
-</td>
-<td class="content">
-Currently, <code>WITH</code> and <code>MERGE</code> commands are not supported.
-</td>
-</tr>
-</table>
-</div>
-<div class="sect2">
-<h3 id="select">SELECT</h3>
-<div class="paragraph">
-<p>Retrieves data from a table or multiple tables.</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="k">SELECT</span> <span class="p">[</span> <span class="n">hintComment</span> <span class="p">]</span> <span class="p">[</span> <span class="n">STREAM</span> <span class="p">]</span> <span class="p">[</span> <span class="k">ALL</span> <span class="o">|</span> <span class="k">DISTINCT</span> <span class="p">]</span>
- <span class="err">{</span> <span class="o">*</span> <span class="o">|</span> <span class="n">projectItem</span> <span class="p">[,</span> <span class="n">projectItem</span> <span class="p">]</span><span class="o">*</span> <span class="err">}</span>
-<span class="k">FROM</span> <span class="n">tableExpression</span>
-<span class="p">[</span> <span class="k">WHERE</span> <span class="n">booleanExpression</span> <span class="p">]</span>
-<span class="p">[</span> <span class="k">GROUP</span> <span class="k">BY</span> <span class="err">{</span> <span class="n">groupItem</span> <span class="p">[,</span> <span class="n">groupItem</span> <span class="p">]</span><span class="o">*</span> <span class="err">}</span> <span class="p">]</span>
-<span class="p">[</span> <span class="k">HAVING</span> <span class="n">booleanExpression</span> <span class="p">]</span></code></pre>
-</div>
-</div>
-</div>
-<div class="sect2">
-<h3 id="insert">INSERT</h3>
-<div class="paragraph">
-<p>Inserts data into a table.</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="err">{</span> <span class="k">INSERT</span> <span class="o">|</span> <span class="n">UPSERT</span> <span class="err">}</span> <span class="k">INTO</span> <span class="n">tablePrimary</span>
-<span class="p">[</span> <span class="s1">'('</span> <span class="k">column</span> <span class="p">[,</span> <span class="k">column</span> <span class="p">]</span><span class="o">*</span> <span class="s1">')'</span> <span class="p">]</span>
-<span class="n">query</span></code></pre>
-</div>
-</div>
-</div>
-<div class="sect2">
-<h3 id="update">UPDATE</h3>
-<div class="paragraph">
-<p>Updates data in a table.</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="k">UPDATE</span> <span class="n">tablePrimary</span>
-<span class="k">SET</span> <span class="n">assign</span> <span class="p">[,</span> <span class="n">assign</span> <span class="p">]</span><span class="o">*</span>
-<span class="p">[</span> <span class="k">WHERE</span> <span class="n">booleanExpression</span> <span class="p">]</span></code></pre>
-</div>
-</div>
-</div>
-<div class="sect2">
-<h3 id="delete">DELETE</h3>
-<div class="paragraph">
-<p>Deletes data from a table.</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="k">DELETE</span> <span class="k">FROM</span> <span class="n">tablePrimary</span> <span class="p">[</span> <span class="p">[</span> <span class="k">AS</span> <span class="p">]</span> <span class="k">alias</span> <span class="p">]</span>
-<span class="p">[</span> <span class="k">WHERE</span> <span class="n">booleanExpression</span> <span class="p">]</span></code></pre>
-</div>
-</div>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="supported-operators-and-functions">Supported Operators and Functions</h2>
-<div class="sectionbody">
-<div class="sect2">
-<h3 id="aggregate-functions">Aggregate Functions</h3>
-<div class="sect3">
-<h4 id="count">COUNT</h4>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="k">COUNT</span><span class="p">(</span> <span class="p">[</span> <span class="k">ALL</span> <span class="o">|</span> <span class="k">DISTINCT</span> <span class="p">]</span> <span class="n">value</span> <span class="p">[,</span> <span class="n">value</span> <span class="p">]</span><span class="o">*</span><span class="p">)</span></code></pre>
-</div>
-</div>
-<div class="paragraph">
-<p>Returns the number of input rows for which value is not null (wholly not null if value is composite).</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="avg">AVG</h4>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="k">AVG</span><span class="p">(</span> <span class="p">[</span> <span class="k">ALL</span> <span class="o">|</span> <span class="k">DISTINCT</span> <span class="p">]</span> <span class="nb">numeric</span><span class="p">)</span></code></pre>
-</div>
-</div>
-<div class="paragraph">
-<p>Returns the average (arithmetic mean) of numeric across all input values.</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="sum">SUM</h4>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="k">SUM</span><span class="p">(</span> <span class="p">[</span> <span class="k">ALL</span> <span class="o">|</span> <span class="k">DISTINCT</span> <span class="p">]</span> <span class="nb">numeric</span><span class="p">)</span></code></pre>
-</div>
-</div>
-<div class="paragraph">
-<p>Returns the sum of numeric across all input values.</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="min">MIN</h4>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="k">MIN</span><span class="p">(</span> <span class="p">[</span> <span class="k">ALL</span> <span class="o">|</span> <span class="k">DISTINCT</span> <span class="p">]</span> <span class="n">value</span><span class="p">)</span></code></pre>
-</div>
-</div>
-<div class="paragraph">
-<p>Returns the minimum value of value across all input values.</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="max">MAX</h4>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="k">MAX</span><span class="p">(</span> <span class="p">[</span> <span class="k">ALL</span> <span class="o">|</span> <span class="k">DISTINCT</span> <span class="p">]</span> <span class="n">value</span><span class="p">)</span></code></pre>
-</div>
-</div>
-<div class="paragraph">
-<p>Returns the maximum value of value across all input values.</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="string_agg">STRING_AGG</h4>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="n">STRING_AGG</span><span class="p">(</span> <span class="n">value</span> <span class="p">[,</span> <span class="n">separator</span> <span class="p">]</span> <span class="p">[</span> <span class="k">ORDER</span> <span class="k">BY</span> <span class="p">...])</span></code></pre>
-</div>
-</div>
-<div class="paragraph">
-<p>Concatenates the values of string expressions and places separator values between them.</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="string_concat">STRING_CONCAT</h4>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="sql"><span class="n">STRING_CONCAT</span><span class="p">(</span><span class="n">string1</span><span class="p">,</span> <span class="n">string2</span><span class="p">,</span> <span class="p">...</span> <span class="n">stringN</span><span class="p">)</span></code></pre>
-</div>
-</div>
-<div class="paragraph">
-<p>Concatenates the text values in the specified data ranges.</p>
-</div>
-</div>
-</div>
-<div class="sect2">
-<h3 id="functions">Functions</h3>
-<div class="sect3">
-<h4 id="json">JSON</h4>
-<div class="ulist">
-<ul>
-<li>
-<p>JSON_EXISTS</p>
-</li>
-<li>
-<p>JSON_VALUE</p>
-</li>
-<li>
-<p>JSON_QUERY</p>
-</li>
-<li>
-<p>JSON_OBJECT</p>
-</li>
-<li>
-<p>JSON_ARRAY</p>
-</li>
-<li>
-<p>JSON_PRETTY</p>
-</li>
-<li>
-<p>STRING</p>
-</li>
-<li>
-<p>CHAR_LENGTH</p>
-</li>
-<li>
-<p>CHARACTER_LENGTH</p>
-</li>
-<li>
-<p>UPPER</p>
-</li>
-<li>
-<p>LOWER</p>
-</li>
-<li>
-<p>POSITION</p>
-</li>
-<li>
-<p>TRIM</p>
-</li>
-<li>
-<p>OVERLAY</p>
-</li>
-<li>
-<p>SUBSTRING</p>
-</li>
-<li>
-<p>INITCAP</p>
-</li>
-<li>
-<p>SPACE</p>
-</li>
-<li>
-<p>STRCMP</p>
-</li>
-<li>
-<p>REVERSE</p>
-</li>
-<li>
-<p>REGEXP_REPLACE</p>
-</li>
-<li>
-<p>SHA1</p>
-</li>
-<li>
-<p>MD5</p>
-</li>
-<li>
-<p>LTRIM</p>
-</li>
-<li>
-<p>TO_BASE64</p>
-</li>
-<li>
-<p>FROM_BASE64</p>
-</li>
-<li>
-<p>COMPRESS</p>
-</li>
-<li>
-<p>CONCAT</p>
-</li>
-<li>
-<p>TRANSLATE</p>
-</li>
-<li>
-<p>ASCII</p>
-</li>
-<li>
-<p>LEFT</p>
-</li>
-<li>
-<p>RIGHT</p>
-</li>
-<li>
-<p>REPEAT</p>
-</li>
-<li>
-<p>SOUNDEX</p>
-</li>
-<li>
-<p>For more information on functions supported by Apache Calcite, see the <a href="https://calcite.apache.org/docs/reference.html#operators-and-functions" target="_blank" rel="noopener">product documentation</a>.</p>
-</li>
-</ul>
-</div>
-</div>
-<div class="sect3">
-<h4 id="numeric">NUMERIC</h4>
-<div class="ulist">
-<ul>
-<li>
-<p>POWER</p>
-</li>
-<li>
-<p>ABS</p>
-</li>
-<li>
-<p>MOD</p>
-</li>
-<li>
-<p>SQRT</p>
-</li>
-<li>
-<p>LN</p>
-</li>
-<li>
-<p>LOG10</p>
-</li>
-<li>
-<p>EXP</p>
-</li>
-<li>
-<p>CEIL</p>
-</li>
-<li>
-<p>FLOOR</p>
-</li>
-<li>
-<p>RAND</p>
-</li>
-<li>
-<p>ACOS</p>
-</li>
-<li>
-<p>ASIN</p>
-</li>
-<li>
-<p>ATAN</p>
-</li>
-<li>
-<p>ATAN2</p>
-</li>
-<li>
-<p>CBRT</p>
-</li>
-<li>
-<p>COS</p>
-</li>
-<li>
-<p>COT</p>
-</li>
-<li>
-<p>DEGREES</p>
-</li>
-<li>
-<p>PI()</p>
-</li>
-<li>
-<p>RADIANS</p>
-</li>
-<li>
-<p>ROUND</p>
-</li>
-<li>
-<p>SIGN</p>
-</li>
-<li>
-<p>SIN</p>
-</li>
-<li>
-<p>TAN</p>
-</li>
-<li>
-<p>TRUNCATE</p>
-</li>
-<li>
-<p>CHR</p>
-</li>
-<li>
-<p>COSH</p>
-</li>
-<li>
-<p>SINH</p>
-</li>
-<li>
-<p>TANH</p>
-</li>
-<li>
-<p>For more information on functions supported by Apache Calcite, see the <a href="https://calcite.apache.org/docs/reference.html#operators-and-functions" target="_blank" rel="noopener">product documentation</a>.</p>
-</li>
-</ul>
-</div>
-</div>
-<div class="sect3">
-<h4 id="general">GENERAL</h4>
-<div class="ulist">
-<ul>
-<li>
-<p>NULLIF</p>
-</li>
-<li>
-<p>COALESCE</p>
-</li>
-<li>
-<p>CAST</p>
-</li>
-<li>
-<p>NVL</p>
-</li>
-<li>
-<p>GREATEST</p>
-</li>
-<li>
-<p>For more information on functions supported by Apache Calcite, see the <a href="https://calcite.apache.org/docs/reference.html#operators-and-functions" target="_blank" rel="noopener">product documentation</a>.</p>
-</li>
-</ul>
-</div>
-</div>
-<div class="sect3">
-<h4 id="timestamp">TIMESTAMP</h4>
-<div class="ulist">
-<ul>
-<li>
-<p>TIMESTAMP_ADD</p>
-</li>
-<li>
-<p>TIMESTAMP_DIFF</p>
-</li>
-<li>
-<p>EXTRACT</p>
-</li>
-<li>
-<p>LAST_DAY</p>
-</li>
-<li>
-<p>For more information on functions supported by Apache Calcite, see the <a href="https://calcite.apache.org/docs/reference.html#operators-and-functions" target="_blank" rel="noopener">product documentation</a>.</p>
-</li>
-</ul>
-</div>
-</div>
-</div>
-</div>
-</div>
<div class="copyright">
- © 2021 The Apache Software Foundation.<br/>
+ © 2022 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
</div>
@@ -675,39 +355,7 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
</article>
<nav class="right-nav" data-swiftype-index='false'>
<div class="toc-wrapper">
- <ul class="sectlevel1">
-<li><a href="#data-manipulation-language-dml">Data Manipulation Language (DML)</a>
-<ul class="sectlevel2">
-<li><a href="#select">SELECT</a></li>
-<li><a href="#insert">INSERT</a></li>
-<li><a href="#update">UPDATE</a></li>
-<li><a href="#delete">DELETE</a></li>
-</ul>
-</li>
-<li><a href="#supported-operators-and-functions">Supported Operators and Functions</a>
-<ul class="sectlevel2">
-<li><a href="#aggregate-functions">Aggregate Functions</a>
-<ul class="sectlevel3">
-<li><a href="#count">COUNT</a></li>
-<li><a href="#avg">AVG</a></li>
-<li><a href="#sum">SUM</a></li>
-<li><a href="#min">MIN</a></li>
-<li><a href="#max">MAX</a></li>
-<li><a href="#string_agg">STRING_AGG</a></li>
-<li><a href="#string_concat">STRING_CONCAT</a></li>
-</ul>
-</li>
-<li><a href="#functions">Functions</a>
-<ul class="sectlevel3">
-<li><a href="#json">JSON</a></li>
-<li><a href="#numeric">NUMERIC</a></li>
-<li><a href="#general">GENERAL</a></li>
-<li><a href="#timestamp">TIMESTAMP</a></li>
-</ul>
-</li>
-</ul>
-</li>
-</ul>
+
</div>
@@ -746,11 +394,11 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
debug: false,
});
</script>
-<script type='module' src='/assets/js/index.js?1639728293' async crossorigin></script>
-<script type='module' src='/assets/js/versioning.js?1639728293' async crossorigin></script>
+<script type='module' src='/assets/js/index.js?1643403254' async crossorigin></script>
+<script type='module' src='/assets/js/versioning.js?1643403254' async crossorigin></script>
-<link rel="stylesheet" href="/assets/css/styles.css?1639728293" media="print" onload="this.media='all'">
-<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1639728293"></noscript>
+<link rel="stylesheet" href="/assets/css/styles.css?1643403254" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1643403254"></noscript>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" media="print" onload="this.media='all'">
<noscript><link media="all" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css"></noscript>
diff --git a/docs/3.0.0-alpha/sql/jdbc-driver.html b/docs/3.0.0-alpha/sql/jdbc-driver.html
index 0fea237..48a2fd8 100644
--- a/docs/3.0.0-alpha/sql/jdbc-driver.html
+++ b/docs/3.0.0-alpha/sql/jdbc-driver.html
@@ -182,15 +182,100 @@
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle expanded '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group expanded'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine"
+ class=''
+ >Introduction</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" class='' >Calcite-Based SQL Engine</a>
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/jdbc-driver"
+ class='active'
+ >JDBC Driver</a>
+
+ </li>
+
+
+
+ </nav>
</li>
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/ddl"
+ class=''
+ >Data Definition Language (DDL)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/dml"
+ class=''
+ >Data Manipulation Language (DML)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/operators-and-functions"
+ class=''
+ >Supported Operators and Functions</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/jdbc-driver" class='active' >JDBC Driver</a>
+
+
+ </nav>
</li>
@@ -215,6 +300,20 @@
</li>
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/transactions/performing-transactions" class='' >Performing Transactions</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/table-views" class='' >Table Views</a>
+
+ </li>
+
</nav>
<div class="left-nav__overlay"></div>
@@ -329,7 +428,7 @@
</div>
</div>
<div class="copyright">
- © 2021 The Apache Software Foundation.<br/>
+ © 2022 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
</div>
@@ -379,11 +478,11 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
debug: false,
});
</script>
-<script type='module' src='/assets/js/index.js?1639728293' async crossorigin></script>
-<script type='module' src='/assets/js/versioning.js?1639728293' async crossorigin></script>
+<script type='module' src='/assets/js/index.js?1643403254' async crossorigin></script>
+<script type='module' src='/assets/js/versioning.js?1643403254' async crossorigin></script>
-<link rel="stylesheet" href="/assets/css/styles.css?1639728293" media="print" onload="this.media='all'">
-<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1639728293"></noscript>
+<link rel="stylesheet" href="/assets/css/styles.css?1643403254" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1643403254"></noscript>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" media="print" onload="this.media='all'">
<noscript><link media="all" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css"></noscript>
diff --git a/docs/3.0.0-alpha/sql/jdbc-driver.html b/docs/3.0.0-alpha/table-views.html
similarity index 78%
copy from docs/3.0.0-alpha/sql/jdbc-driver.html
copy to docs/3.0.0-alpha/table-views.html
index 0fea237..9fca661 100644
--- a/docs/3.0.0-alpha/sql/jdbc-driver.html
+++ b/docs/3.0.0-alpha/table-views.html
@@ -50,9 +50,9 @@
<meta name="ignite-version" content="3.0.0-alpha" />
- <title>JDBC Driver | Ignite Documentation</title>
+ <title>Table Views | Ignite Documentation</title>
- <link rel="canonical" href="/docs/3.0.0-alpha/sql/jdbc-driver" />
+ <link rel="canonical" href="/docs/3.0.0-alpha/table-views" />
<META NAME="ROBOTS" CONTENT="NOINDEX" />
@@ -182,15 +182,100 @@
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
- <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" class='' >Calcite-Based SQL Engine</a>
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine"
+ class=''
+ >Introduction</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/jdbc-driver"
+ class=''
+ >JDBC Driver</a>
+
+ </li>
+
+
+
+ </nav>
</li>
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/ddl"
+ class=''
+ >Data Definition Language (DDL)</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/jdbc-driver" class='active' >JDBC Driver</a>
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/dml"
+ class=''
+ >Data Manipulation Language (DML)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/operators-and-functions"
+ class=''
+ >Supported Operators and Functions</a>
+
+ </li>
+
+
+
+ </nav>
</li>
@@ -215,121 +300,139 @@
</li>
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/transactions/performing-transactions" class='' >Performing Transactions</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/table-views" class='active' >Table Views</a>
+
+ </li>
+
</nav>
<div class="left-nav__overlay"></div>
<article data-swiftype-index='true'>
- <a class='edit-link' href="https://github.com/apache/ignite/tree/IGNITE-7595/docs/_docs/sql/jdbc-driver.adoc" target="_blank">Edit</a>
+ <a class='edit-link' href="https://github.com/apache/ignite/tree/IGNITE-7595/docs/_docs/table-views.adoc" target="_blank">Edit</a>
- <h1>JDBC Driver</h1>
+ <h1>Table Views</h1>
<div id="preamble">
<div class="sectionbody">
<div class="paragraph">
-<p>Apache Ignite is shipped with JDBC driver that allows processing of distributed data using standard SQL statements like <code>SELECT</code>, <code>INSERT</code>, <code>UPDATE</code>, or <code>DELETE</code> directly from the JDBC side.</p>
+<p>Apache Ignite 3.0 Alpha introduces the key-value API to access cached data via built-in table views.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<div class="title">Note</div>
+</td>
+<td class="content">
+<div class="paragraph">
+<p>Please note that the key-value API requires using a case sensitive collation for the database object names and parsing a string argument of the name that is passed through the API.</p>
</div>
<div class="paragraph">
-<p>WARNING:</p>
+<p>See the examples below:</p>
</div>
+<div class="ulist">
+<ul>
+<li>
+<p>String values:</p>
<div class="listingblock">
<div class="content">
-<pre>This Alpha release implementation of JDBC driver does not support the following functionality:
-
-* SSL/TLS connection;
-* Multiple Endpoints;
-* Partition Awareness;
-* `CREATE TABLE`, `ALTER TABLE`, `WITH`, and `MERGE` commands.</pre>
+<pre class="rouge highlight"><code data-lang="text">CREATE TABLE MyTable (id INT, val INT); -> creates PUBLIC.MYTABLE
+ignite.tables().table("public.mytable"); -> returns PUBLIC.MYTABLE
+CREATE TABLE \"MyTable\" (id INT, val INT); -> creates PUBLIC.MyTable
+ignite.tables().table("public.\"MyTable\""); -> returns PUBLIC.MyTable</code></pre>
</div>
</div>
+</li>
+<li>
+<p>Tuples or columns:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="rouge highlight"><code data-lang="text">CREATE TABLE MyTable (id INT, \"Id\" INT, val INT); -> creates PUBLIC.MYTABLE (ID, Id, VAL)
+Tuple tuple = ...
+tuple.value("id") -> returns ID column's value
+tuple.value("Id") -> returns ID column's value
+tuple.value("\"Id\"") -> returns Id column's value</code></pre>
</div>
</div>
-<div class="sect1">
-<h2 id="setting-up">Setting Up</h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>The name of the driver’s class is <code>org.apache.ignite.IgniteJdbcThinDriver</code>. For instance, this is how you can open a JDBC connection to the cluster node listening on IP address <code>192.168.0.50</code>:</p>
+</li>
+</ul>
</div>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="java"><span class="c1">// Load JDBC drivers.</span>
-<span class="nc">ServiceLoader</span><span class="o">.</span><span class="na">load</span><span class="o">(</span><span class="n">java</span><span class="o">.</span><span class="na">sql</span><span class="o">.</span><span class="na">Driver</span><span class="o">.</span><span class="na">class</span><span class="o">);</span>
-
-<span class="c1">// Open the JDBC connection.</span>
-<span class="nc">Connection</span> <span class="n">conn</span> <span class="o">=</span> <span class="nc">DriverManager</span><span class="o">.</span><span class="na">getConnection</span><span class="o">(</span><span class="s">"jdbc:ignite:thin://127.0.1.1:10800"</span><span class="o">);</span></code></pre>
+</td>
+</tr>
+</table>
</div>
</div>
-<div class="paragraph">
-<p>The driver connects to one of the cluster nodes and forwards all the queries to it for final execution. The node handles the query distribution and the result’s aggregations. Then the result is sent back to the client application.</p>
</div>
+<div class="sect1">
+<h2 id="key-value-view">Key-Value View</h2>
+<div class="sectionbody">
<div class="paragraph">
-<p>The JDBC connection string may be formatted with one of two patterns: <code>URL query</code> or <code>semicolon</code>:</p>
+<p>This table view maps key objects to value objects. The view cannot contain duplicate key objects; each key object can map to at most one value object.</p>
</div>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="java"><span class="c1">// URL query pattern</span>
-<span class="nl">jdbc:ignite:thin:</span><span class="c1">//<hostAndPortRange0>[,<hostAndPortRange1>]...[,<hostAndPortRangeN>][/schema][?<params>]</span>
-
-<span class="n">hostAndPortRange</span> <span class="o">:=</span> <span class="n">host</span><span class="o">[:</span><span class="n">port_from</span><span class="o">[..</span><span class="na">port_to</span><span class="o">]]</span>
-
-<span class="n">params</span> <span class="o">:=</span> <span class="n">param1</span><span class="o">=</span><span class="n">value1</span><span class="o">[&</span><span class="n">param2</span><span class="o">=</span><span class="n">value2</span><span class="o">]...[&</span><span class="n">paramN</span><span class="o">=</span><span class="n">valueN</span><span class="o">]</span>
-
-<span class="c1">// Semicolon pattern</span>
-<span class="nl">jdbc:ignite:thin:</span><span class="c1">//<hostAndPortRange0>[,<hostAndPortRange1>]...[,<hostAndPortRangeN>][;schema=<schema_name>][;param1=value1]...[;paramN=valueN]</span></code></pre>
+<div class="sect2">
+<h3 id="running-an-example">Running an Example</h3>
+<div class="paragraph">
+<p>Examples are shipped as a separate Maven project, which is located in the <code>examples</code> folder. <code>KeyValueViewExample</code> demonstrates the usage of the key-value view.</p>
</div>
+<div class="paragraph">
+<p>To start running <code>KeyValueViewExample</code>, please refer to its <a href="https://github.com/apache/ignite-3/blob/main/examples/src/main/java/org/apache/ignite/example/table/KeyValueViewExample.java" target="_blank" rel="noopener">JavaDoc</a> for instructions.</p>
</div>
-<div class="ulist">
-<ul>
-<li>
-<p><code>host</code> is required and defines the host of the cluster node to connect to.</p>
-</li>
-<li>
-<p><code>port_from</code> is the beginning of the port range to use to open the connection. 10800 is used by default if this parameter is omitted.</p>
-</li>
-<li>
-<p><code>port_to</code> is optional. It is set to the <code>port_from</code> value by default if this parameter is omitted.</p>
-</li>
-<li>
-<p><code>schema</code> is the schema name to access. PUBLIC is used by default. This name should correspond to the SQL ANSI-99 standard. Non-quoted identifiers are not case sensitive. Quoted identifiers are case sensitive. When semicolon format is used, the schema may be defined as a parameter with name schema.</p>
-</li>
-<li>
-<p><code><params></code> are optional.</p>
-</li>
-</ul>
</div>
</div>
</div>
<div class="sect1">
-<h2 id="running-an-example">Running an Example</h2>
+<h2 id="record-view">Record View</h2>
<div class="sectionbody">
<div class="paragraph">
-<p>Examples are shipped as a separate Maven project, which is located in the <code>examples</code> folder. <code>SqlJdbcExample</code> demonstrates the usage of the Apache Ignite JDBC driver.</p>
+<p>This table view provides methods to access table records.</p>
</div>
+<div class="sect2">
+<h3 id="running-an-example-2">Running an Example</h3>
<div class="paragraph">
-<p>To run <code>SqlJdbcExample</code>, perform the following steps:</p>
+<p>Examples are shipped as a separate Maven project, which is located in the <code>examples</code> folder. <code>RecordViewExample</code> demonstrates the usage of the record view.</p>
</div>
-<div class="olist arabic">
-<ol class="arabic">
-<li>
-<p>Import the examples project into you IDE;</p>
-</li>
-<li>
-<p>Start a server node using the CLI tool:</p>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="shell">ignite node start <span class="nt">--config</span><span class="o">=</span><span class="nv">$IGNITE_HOME</span>/examples/config/ignite-config.json my-first-node</code></pre>
+<div class="paragraph">
+<p>To start running <code>RecordViewExample</code>, please refer to its <a href="https://github.com/apache/ignite-3/blob/main/examples/src/main/java/org/apache/ignite/example/table/RecordViewExample.java" target="_blank" rel="noopener">JavaDoc</a> for instructions.</p>
</div>
</div>
-</li>
-<li>
-<p>Run <code>SqlJdbcExample</code> in the IDE.</p>
-</li>
-</ol>
+</div>
+</div>
+<div class="sect1">
+<h2 id="record-binary-view">Record Binary View</h2>
+<div class="sectionbody">
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<div class="title">Note</div>
+</td>
+<td class="content">
+This is a table view implementation for the binary objects.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>You can use binary objects to access the cached data. The benefit of using binary objects is that you avoid deserialization, which is important if you access objects from a server node that does not have the object’s class representation.</p>
+</div>
+<div class="paragraph">
+<p>For more information on record binary view, please see the following <a href="https://github.com/apache/ignite-3/blob/main/modules/table/src/main/java/org/apache/ignite/internal/table/RecordBinaryViewImpl.java" target="_blank" rel="noopener">implementation example</a>.</p>
</div>
</div>
</div>
<div class="copyright">
- © 2021 The Apache Software Foundation.<br/>
+ © 2022 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
</div>
@@ -338,9 +441,18 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
<nav class="right-nav" data-swiftype-index='false'>
<div class="toc-wrapper">
<ul class="sectlevel1">
-<li><a href="#setting-up">Setting Up</a></li>
+<li><a href="#key-value-view">Key-Value View</a>
+<ul class="sectlevel2">
<li><a href="#running-an-example">Running an Example</a></li>
</ul>
+</li>
+<li><a href="#record-view">Record View</a>
+<ul class="sectlevel2">
+<li><a href="#running-an-example-2">Running an Example</a></li>
+</ul>
+</li>
+<li><a href="#record-binary-view">Record Binary View</a></li>
+</ul>
</div>
@@ -379,11 +491,11 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
debug: false,
});
</script>
-<script type='module' src='/assets/js/index.js?1639728293' async crossorigin></script>
-<script type='module' src='/assets/js/versioning.js?1639728293' async crossorigin></script>
+<script type='module' src='/assets/js/index.js?1643403254' async crossorigin></script>
+<script type='module' src='/assets/js/versioning.js?1643403254' async crossorigin></script>
-<link rel="stylesheet" href="/assets/css/styles.css?1639728293" media="print" onload="this.media='all'">
-<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1639728293"></noscript>
+<link rel="stylesheet" href="/assets/css/styles.css?1643403254" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1643403254"></noscript>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" media="print" onload="this.media='all'">
<noscript><link media="all" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css"></noscript>
diff --git a/docs/3.0.0-alpha/sql/jdbc-driver.html b/docs/3.0.0-alpha/transactions/performing-transactions.html
similarity index 74%
copy from docs/3.0.0-alpha/sql/jdbc-driver.html
copy to docs/3.0.0-alpha/transactions/performing-transactions.html
index 0fea237..a137b8e 100644
--- a/docs/3.0.0-alpha/sql/jdbc-driver.html
+++ b/docs/3.0.0-alpha/transactions/performing-transactions.html
@@ -50,9 +50,9 @@
<meta name="ignite-version" content="3.0.0-alpha" />
- <title>JDBC Driver | Ignite Documentation</title>
+ <title>Performing Transactions | Ignite Documentation</title>
- <link rel="canonical" href="/docs/3.0.0-alpha/sql/jdbc-driver" />
+ <link rel="canonical" href="/docs/3.0.0-alpha/transactions/performing-transactions" />
<META NAME="ROBOTS" CONTENT="NOINDEX" />
@@ -182,15 +182,100 @@
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine"
+ class=''
+ >Introduction</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/calcite-based-sql-engine" class='' >Calcite-Based SQL Engine</a>
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql/jdbc-driver"
+ class=''
+ >JDBC Driver</a>
+
+ </li>
+
+
+
+ </nav>
</li>
<li>
+
+
+
+
+
+ <button type='button' class='group-toggle collapsed '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg" width="6" height="10"></button>
+ <nav class='nav-group collapsed'>
+
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/ddl"
+ class=''
+ >Data Definition Language (DDL)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/dml"
+ class=''
+ >Data Manipulation Language (DML)</a>
+
+ </li>
+
+
+
+
+
+
+ <li>
+
+ <a href="/docs/3.0.0-alpha/sql-reference/operators-and-functions"
+ class=''
+ >Supported Operators and Functions</a>
+
+ </li>
- <a href="/docs/3.0.0-alpha/sql/jdbc-driver" class='active' >JDBC Driver</a>
+
+
+ </nav>
</li>
@@ -215,121 +300,80 @@
</li>
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/transactions/performing-transactions" class='active' >Performing Transactions</a>
+
+ </li>
+
+ <li>
+
+
+ <a href="/docs/3.0.0-alpha/table-views" class='' >Table Views</a>
+
+ </li>
+
</nav>
<div class="left-nav__overlay"></div>
<article data-swiftype-index='true'>
- <a class='edit-link' href="https://github.com/apache/ignite/tree/IGNITE-7595/docs/_docs/sql/jdbc-driver.adoc" target="_blank">Edit</a>
+ <a class='edit-link' href="https://github.com/apache/ignite/tree/IGNITE-7595/docs/_docs/transactions/performing-transactions.adoc" target="_blank">Edit</a>
- <h1>JDBC Driver</h1>
+ <h1>Performing Transactions</h1>
<div id="preamble">
<div class="sectionbody">
<div class="paragraph">
-<p>Apache Ignite is shipped with JDBC driver that allows processing of distributed data using standard SQL statements like <code>SELECT</code>, <code>INSERT</code>, <code>UPDATE</code>, or <code>DELETE</code> directly from the JDBC side.</p>
-</div>
-<div class="paragraph">
-<p>WARNING:</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre>This Alpha release implementation of JDBC driver does not support the following functionality:
-
-* SSL/TLS connection;
-* Multiple Endpoints;
-* Partition Awareness;
-* `CREATE TABLE`, `ALTER TABLE`, `WITH`, and `MERGE` commands.</pre>
-</div>
+<p>This Alpha release introduces the key-value API that provides an interface for starting and completing transactions.</p>
</div>
</div>
</div>
<div class="sect1">
-<h2 id="setting-up">Setting Up</h2>
+<h2 id="executing-transactions">Executing Transactions</h2>
<div class="sectionbody">
<div class="paragraph">
-<p>The name of the driver’s class is <code>org.apache.ignite.IgniteJdbcThinDriver</code>. For instance, this is how you can open a JDBC connection to the cluster node listening on IP address <code>192.168.0.50</code>:</p>
+<p>Use the <code>igniteTransactions</code> class to create a transaction object and the <code>commit</code> method to send it.</p>
</div>
-<div class="listingblock">
+<code-tabs><code-tab data-tab='Java'><div class="listingblock">
<div class="content">
-<pre class="rouge highlight"><code data-lang="java"><span class="c1">// Load JDBC drivers.</span>
-<span class="nc">ServiceLoader</span><span class="o">.</span><span class="na">load</span><span class="o">(</span><span class="n">java</span><span class="o">.</span><span class="na">sql</span><span class="o">.</span><span class="na">Driver</span><span class="o">.</span><span class="na">class</span><span class="o">);</span>
-
-<span class="c1">// Open the JDBC connection.</span>
-<span class="nc">Connection</span> <span class="n">conn</span> <span class="o">=</span> <span class="nc">DriverManager</span><span class="o">.</span><span class="na">getConnection</span><span class="o">(</span><span class="s">"jdbc:ignite:thin://127.0.1.1:10800"</span><span class="o">);</span></code></pre>
-</div>
-</div>
-<div class="paragraph">
-<p>The driver connects to one of the cluster nodes and forwards all the queries to it for final execution. The node handles the query distribution and the result’s aggregations. Then the result is sent back to the client application.</p>
-</div>
-<div class="paragraph">
-<p>The JDBC connection string may be formatted with one of two patterns: <code>URL query</code> or <code>semicolon</code>:</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="rouge highlight"><code data-lang="java"><span class="c1">// URL query pattern</span>
-<span class="nl">jdbc:ignite:thin:</span><span class="c1">//<hostAndPortRange0>[,<hostAndPortRange1>]...[,<hostAndPortRangeN>][/schema][?<params>]</span>
-
-<span class="n">hostAndPortRange</span> <span class="o">:=</span> <span class="n">host</span><span class="o">[:</span><span class="n">port_from</span><span class="o">[..</span><span class="na">port_to</span><span class="o">]]</span>
-
-<span class="n">params</span> <span class="o">:=</span> <span class="n">param1</span><span class="o">=</span><span class="n">value1</span><span class="o">[&</span><span class="n">param2</span><span class="o">=</span><span class="n">value2</span><span class="o">]...[&</span><span class="n">paramN</span><span class="o">=</span><span class="n">valueN</span><span class="o">]</span>
-
-<span class="c1">// Semicolon pattern</span>
-<span class="nl">jdbc:ignite:thin:</span><span class="c1">//<hostAndPortRange0>[,<hostAndPortRange1>]...[,<hostAndPortRangeN>][;schema=<schema_name>][;param1=value1]...[;paramN=valueN]</span></code></pre>
-</div>
-</div>
-<div class="ulist">
-<ul>
-<li>
-<p><code>host</code> is required and defines the host of the cluster node to connect to.</p>
-</li>
-<li>
-<p><code>port_from</code> is the beginning of the port range to use to open the connection. 10800 is used by default if this parameter is omitted.</p>
-</li>
-<li>
-<p><code>port_to</code> is optional. It is set to the <code>port_from</code> value by default if this parameter is omitted.</p>
-</li>
-<li>
-<p><code>schema</code> is the schema name to access. PUBLIC is used by default. This name should correspond to the SQL ANSI-99 standard. Non-quoted identifiers are not case sensitive. Quoted identifiers are case sensitive. When semicolon format is used, the schema may be defined as a parameter with name schema.</p>
-</li>
-<li>
-<p><code><params></code> are optional.</p>
-</li>
-</ul>
+<pre class="rouge highlight"><code data-lang="java"><span class="nc">Transaction</span> <span class="n">tx</span> <span class="o">=</span> <span class="n">igniteTransactions</span><span class="o">.</span><span class="na">begin</span><span class="o">();</span>
+<span class="n">tx</span><span class="o">.</span><span class="na">commit</span><span class="o">()</span></code></pre>
</div>
+</div></code-tab></code-tabs>
</div>
</div>
<div class="sect1">
-<h2 id="running-an-example">Running an Example</h2>
+<h2 id="asynchronous-transactions">Asynchronous Transactions</h2>
<div class="sectionbody">
<div class="paragraph">
-<p>Examples are shipped as a separate Maven project, which is located in the <code>examples</code> folder. <code>SqlJdbcExample</code> demonstrates the usage of the Apache Ignite JDBC driver.</p>
+<p>You can also perform transactions asynchronously.</p>
</div>
-<div class="paragraph">
-<p>To run <code>SqlJdbcExample</code>, perform the following steps:</p>
-</div>
-<div class="olist arabic">
-<ol class="arabic">
-<li>
-<p>Import the examples project into you IDE;</p>
-</li>
-<li>
-<p>Start a server node using the CLI tool:</p>
-<div class="listingblock">
+<code-tabs><code-tab data-tab='Java'><div class="listingblock">
<div class="content">
-<pre class="rouge highlight"><code data-lang="shell">ignite node start <span class="nt">--config</span><span class="o">=</span><span class="nv">$IGNITE_HOME</span>/examples/config/ignite-config.json my-first-node</code></pre>
-</div>
-</div>
-</li>
-<li>
-<p>Run <code>SqlJdbcExample</code> in the IDE.</p>
-</li>
-</ol>
+<pre class="rouge highlight"><code data-lang="java"><span class="kd">protected</span> <span class="nc">Table</span> <span class="n">accounts</span><span class="o">;</span>
+<span class="kd">protected</span> <span class="nc">Table</span> <span class="n">customers</span><span class="o">;</span>
+<span class="n">accounts</span><span class="o">.</span><span class="na">recordView</span><span class="o">().</span><span class="na">upsert</span><span class="o">(</span><span class="kc">null</span><span class="o">,</span> <span class="n">makeValue</span><span class="o">(</span><span class="mi">1</span><span class="o">,</span> <span class="no">BALANCE_1</span><span class="o">));</span>
+<span class="n">accounts</span><span class="o">.</span><span class="na">recordView</span><span class="o">().</span><span class="na">upsert</span><span class="o">(</span><span class="kc">null</span><span class="o">,</span> <span class="n">makeValue</span><span class="o">(</span><span class="mi">2</span><span class="o">,</span> <span class="no">BALANCE_2</span><span class="o">));</span>
+<span class="n">igniteTransactions</span><span class="o">.</span><span class="na">beginAsync</span><span class="o">()</span>
+<span class="o">.</span><span class="na">thenCompose</span><span class="o">(</span><span class="n">tx</span> <span class="o">-></span> <span class="n">accounts</span><span class="o">.</span><span class="na">recordView</span><span class="o">().</span><span class="na">getAsync</span><span class="o">(</span><span class="n">tx</span><span class="o">,</span> <span class="n">makeKey</span><span class="o">(</span><span class="mi">1</span><span class="o">))</span>
+<span class="o">.</span><span class="na">thenCombine</span><span class="o">(</span><span class="n">accounts</span><span class="o">.</span><span class="na">recordView</span><span class="o">().</span><span class="na">getAsync</span><span class="o">(</span><span class="n">tx</span><span class="o">,</span> <span class="n">makeKey</span><span class="o">(</span><span class="mi">2</span><span class="o">)),</span> <span class="o">(</span><span class="n">v1</span><span class="o">,</span> <span cl [...]
+<span class="o">.</span><span class="na">thenCompose</span><span class="o">(</span><span class="n">pair</span> <span class="o">-></span> <span class="n">allOf</span><span class="o">(</span>
+<span class="n">accounts</span><span class="o">.</span><span class="na">recordView</span><span class="o">().</span><span class="na">upsertAsync</span><span class="o">(</span>
+<span class="n">tx</span><span class="o">,</span> <span class="n">makeValue</span><span class="o">(</span><span class="mi">1</span><span class="o">,</span> <span class="n">pair</span><span class="o">.</span><span class="na">getFirst</span><span class="o">().</span><span class="na">doubleValue</span><span class="o">(</span><span class="s">"balance"</span><span class="o">)</span> <span class="o">-</span> <span class="no">DELTA</span><span class="o">)),</span>
+<span class="n">accounts</span><span class="o">.</span><span class="na">recordView</span><span class="o">().</span><span class="na">upsertAsync</span><span class="o">(</span>
+<span class="n">tx</span><span class="o">,</span> <span class="n">makeValue</span><span class="o">(</span><span class="mi">2</span><span class="o">,</span> <span class="n">pair</span><span class="o">.</span><span class="na">getSecond</span><span class="o">().</span><span class="na">doubleValue</span><span class="o">(</span><span class="s">"balance"</span><span class="o">)</span> <span class="o">+</span> <span class="no">DELTA</span><span class="o">))</span>
+<span class="o">)</span>
+<span class="o">.</span><span class="na">thenApply</span><span class="o">(</span><span class="n">ignored</span> <span class="o">-></span> <span class="n">tx</span><span class="o">)</span>
+<span class="o">)</span>
+<span class="o">).</span><span class="na">thenCompose</span><span class="o">(</span><span class="nl">Transaction:</span><span class="o">:</span><span class="n">commitAsync</span><span class="o">).</span><span class="na">join</span><span class="o">();</span></code></pre>
</div>
+</div></code-tab></code-tabs>
</div>
</div>
<div class="copyright">
- © 2021 The Apache Software Foundation.<br/>
+ © 2022 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
</div>
@@ -338,8 +382,8 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
<nav class="right-nav" data-swiftype-index='false'>
<div class="toc-wrapper">
<ul class="sectlevel1">
-<li><a href="#setting-up">Setting Up</a></li>
-<li><a href="#running-an-example">Running an Example</a></li>
+<li><a href="#executing-transactions">Executing Transactions</a></li>
+<li><a href="#asynchronous-transactions">Asynchronous Transactions</a></li>
</ul>
</div>
@@ -379,11 +423,11 @@ Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either
debug: false,
});
</script>
-<script type='module' src='/assets/js/index.js?1639728293' async crossorigin></script>
-<script type='module' src='/assets/js/versioning.js?1639728293' async crossorigin></script>
+<script type='module' src='/assets/js/index.js?1643403254' async crossorigin></script>
+<script type='module' src='/assets/js/versioning.js?1643403254' async crossorigin></script>
-<link rel="stylesheet" href="/assets/css/styles.css?1639728293" media="print" onload="this.media='all'">
-<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1639728293"></noscript>
+<link rel="stylesheet" href="/assets/css/styles.css?1643403254" media="print" onload="this.media='all'">
+<noscript><link media="all" rel="stylesheet" href="/assets/css/styles.css?1643403254"></noscript>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" media="print" onload="this.media='all'">
<noscript><link media="all" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css"></noscript>