Where the platform allows it, the structure of a database is changed from the editor with the same statements as its data: `create table`, `drop table`, `create or replace view`, `drop view`. ## What a Platform Allows A database - Microsoft SQL Server, Oracle, PostgreSQL, MySQL - takes these statements as it would from any other client. A cloud platform generally does not: its structure is decided by the platform and is not ours to change, so a `create table` against such a container is refused rather than half-executed. Which of the two a container is shows in [[Invantive Query Tool/Describe Object|Describe Object]], which states per table whether it may be selected from, inserted into, updated and deleted from. ## A View Over Anything A view is the exception worth knowing. `create or replace view` defines a view in the data dictionary of the connection rather than on the platform, so a view may be defined over a cloud table, over a join across two containers, or over a table of the [[Invantive Query Tool/Sample Database|sample database]]. From then on it is selected from by name like any other table. That is the tidiest way to keep a recurring statement: not as a file which everybody copies, but as a view which everybody selects from. ## Where It Is Documented The statements and their options are documented per statement: [[Invantive UniversalSQL/Grammar/Statement Types/Create Table (createTableStatement)|create table]], [[Invantive UniversalSQL/Grammar/Statement Types/Drop Table (dropTableStatement)|drop table]], [[Invantive UniversalSQL/Grammar/Statement Types/Create or Replace View Statement (createOrReplaceViewStatement)|create or replace view]] and [[Invantive UniversalSQL/Grammar/Statement Types/Drop View Statement (dropViewStatement)|drop view]]. A structure change is not undone by the product; see [[Invantive Query Tool/Changing Data|Changing Data]] for why that matters and what habit answers it.