A schema is a logical grouping of relational objects such as streams, changelogs and materialized views. Schemas are grouped in a database. A combination of databases and schemas enable you to organize your streams, changelogs, and other database objects in a hierarchical fashion in DeltaStream. Such hierarchies also serve as a basis for providing role-based access control (RBAC) in DeltaStream in the same way as other relational databases. CREATE SCHEMA enters a new schema into the current database. The schema name must be distinct from the name of any existing schema in the current database.
Arguments
schema_name
Name of the schema to create. If the name is case sensitive you must wrap it in double quotes; otherwise the system uses the lower case name.
IN DATABASE database_name
Optionally, the database i which to create the schema. If the name is case sensitive you must wrap it in double quotes; otherwise the system uses the lower case name.
Examples
Create a new schema in default database
The following creates a new schema named newschema in the current database demodb:
demodb.public/<no-store># CREATE SCHEMA newschema;
+------------+----------------+------------+------------------------------------------+
| Type | Name | Command | Summary |
+============+================+============+==========================================+
| schema | mydb.newschema | CREATE | schema "demodb.newschema" was |
| | | | successfully created |
+------------+----------------+------------+------------------------------------------+
demodb.public/<no-store># LIST SCHEMAS;
+------------+-------------+------------+-------------------------------+
| Name | Is Default | Owner | Created At |
+============+=============+============+===============================+
| public | true | sysadmin | 2023-08-09 17:14:46 +0000 UTC |
+------------+-------------+------------+-------------------------------+
| newschema | false | sysadmin | 2024-07-02 21:20:23 +0000 UTC |
+------------+-------------+------------+-------------------------------+
Create a new schema in a specified database
The following creates a new schema named NewSchema in the specified database otherdb:
demodb.public/<no-store># CREATE SCHEMA "NewSchema" IN DATABASE otherdb;
+------------+-------------------+------------+------------------------------------------+
| Type | Name | Command | Summary |
+============+===================+============+==========================================+
| schema | otherdb.NewSchema | CREATE | schema "otherdb.NewSchema" was |
| | | | successfully created |
+------------+-------------------+------------+------------------------------------------+
demodb.public/<no-store># LIST SCHEMAS IN DATABASE otherdb;
+------------+-------------+------------+-------------------------------+
| Name | Is Default | Owner | Created At |
+============+=============+============+===============================+
| public | true | sysadmin | 2024-07-02 21:21:18 +0000 UTC |
+------------+-------------+------------+-------------------------------+
| NewSchema | false | sysadmin | 2024-07-02 21:21:25 +0000 UTC |
+------------+-------------+------------+-------------------------------+