Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
I would like Calcite to support simple DDL.
DDL (and other commands such as KILL STATEMENT) make it possible to do a wide range of operations over a REST or JDBC interface. We can't expect everything do be done locally, using Java method calls.
I expect that projects that use Calcite will define their own DDL. (In fact Drill and Phoenix already do; see PHOENIX-1706.) Those projects are very likely to have their own variations on CREATE TABLE etc. so they will want to extend the parser. What I did in Phoenix (which was in turn adapted from Drill) is a model that other projects can follow.
But the base Calcite project should have CREATE TABLE, DROP TABLE, CREATE SCHEMA, DROP SCHEMA, CREATE [ OR REPLACE ] VIEW etc. There will be an AST (extending SqlNode) for each of these commands, and a command-handler. Each project that uses Calcite could extend those
ASTs, but it would be fine if it built its own AST and command-handler.
Attachments
Issue Links
- blocks
-
CALCITE-2046 Support "CREATE LIBRARY" DDL
- In Progress
-
CALCITE-2045 Support "CREATE TYPE" DDL
- Closed
- depends upon
-
CALCITE-852 DDL statements
- Closed
- is depended upon by
-
CALCITE-1991 In CREATE TABLE, allow generated columns (both virtual and stored), CHECK constraints, and DEFAULT clause
- Closed
-
CALCITE-2049 Release Calcite 1.15.0
- Closed
- is related to
-
CALCITE-706 AvaticaStatement execute method to support DDL
- Open
- relates to
-
CALCITE-4701 Implement and publish Gradle plugin for extending the parser
- Open