# Create or change tables

Control / ddl

create, alter or maintain tables and indexes

Page: <https://meridian.online/operations/create-or-change-tables>

## Status

Runs as a SQL step.

arcform carries it as a `sql:` step today.

## The DuckDB step

create and alter a table

```sql
CREATE TABLE t (id INTEGER PRIMARY KEY, v VARCHAR); ALTER TABLE t ADD COLUMN w DOUBLE DEFAULT 0;
INSERT INTO t (id, v) VALUES (1, 'a');
CREATE TEMP TABLE result AS
SELECT * FROM t;
SELECT * FROM result;
SELECT CASE WHEN ((SELECT count(*) = 1 AND max(w) = 0 FROM result)) THEN 'as expected' ELSE error('the added column did not take its default') END AS verdict;
```

The statement builds its own data.

It needs nothing installed beyond DuckDB itself.

## Variants

- Change a table's columns: Add, drop, rename or retype the columns of an existing table or view.
- Manage buckets, queues and topics: Create, delete, list or purge the storage buckets, containers, queues and topics that pipelines write to.
- Create a table: Create a table, schema or catalogue, empty or from a query, in a chosen database or table format.
- [Drop a table](https://meridian.online/operations/create-or-change-tables/drop-a-table): Remove a table, view or other catalogue entry.
- [Build an index or constraint](https://meridian.online/operations/create-or-change-tables/build-an-index-or-constraint): Create or drop an index or a constraint on a table's columns or a graph's properties.
- Maintain a lake table's files: Compact files, vacuum old versions and expire snapshots of a Delta Lake or Iceberg table.
- Empty a table: Delete every row of a table and keep the table itself.

## What other tools call it

Meridian's classification; an independent blind rating agreed on 86.2% of 312 rows (exact class, version 2).

- DuckDB: [`ALTER TABLE`](https://duckdb.org/docs/current/sql/statements/alter_table) (read 2026-09-27)
- DuckDB: [`ALTER VIEW`](https://duckdb.org/docs/current/sql/statements/alter_view) (read 2026-09-27)
- DuckDB: [`CREATE INDEX`](https://duckdb.org/docs/current/sql/statements/create_index) (read 2026-09-27)
- DuckDB: [`CREATE SCHEMA`](https://duckdb.org/docs/current/sql/statements/create_schema) (read 2026-09-27)
- DuckDB: [`CREATE TABLE`](https://duckdb.org/docs/current/sql/statements/create_table) (read 2026-09-27)
- DuckDB: [`DROP`](https://duckdb.org/docs/current/sql/statements/drop) (read 2026-09-27)
- Apache Hop: [`DDL Generator`](https://hop.apache.org/manual/latest/pipeline/transforms/ddl.html) (read 2026-09-27)
- Apache Hop: [`Neo4j constraint`](https://hop.apache.org/manual/latest/workflow/actions/neo4j-constraint.html) (read 2026-09-27)
- Apache Hop: [`Neo4j index`](https://hop.apache.org/manual/latest/workflow/actions/neo4j-index.html) (read 2026-09-27)
- Apache Hop: [`Spark lake table maintenance`](https://hop.apache.org/manual/latest/pipeline/transforms/spark-lake-table-maintenance.html) (read 2026-09-27)
- Apache Hop: [`Truncate tables`](https://hop.apache.org/manual/latest/workflow/actions/truncatetables.html) (read 2026-09-27)
- Talend: [`File store bucket and container components (family)`](https://help.qlik.com/talend/en-US/components/8.0/About) (read 2026-09-27)
- Talend: [`Messaging queue, topic and message management components (family)`](https://help.qlik.com/talend/en-US/components/8.0/About) (read 2026-09-27)
- Talend: [`tCreateTable`](https://help.qlik.com/talend/en-US/components/8.0/database-utility/database-utility-component) (read 2026-09-27)
- Talend: [`tHBaseNamespace`](https://help.qlik.com/talend/en-US/components/8.0/hbase/hbase-component) (read 2026-09-27)
- Talend: [`tHBaseTable`](https://help.qlik.com/talend/en-US/components/8.0/hbase/hbase-component) (read 2026-09-27)
- Talend: [`tHCatalogOperation (deprecated)`](https://help.qlik.com/talend/en-US/components/8.0/hcatalog/hcatalog-component) (read 2026-09-27)
- Talend: [`tHiveCreateTable`](https://help.qlik.com/talend/en-US/components/8.0/hive/hive-component) (read 2026-09-27)
- Talend: [`tIcebergCatalog`](https://help.qlik.com/talend/en-US/components/8.0/iceberg/iceberg-component) (read 2026-09-27)
- Talend: [`tIcebergTable`](https://help.qlik.com/talend/en-US/components/8.0/iceberg/iceberg-component) (read 2026-09-27)
- Talend: [`tImpalaCreateTable`](https://help.qlik.com/talend/en-US/components/8.0/impala/impala-component) (read 2026-09-27)
- Talend: [`tNeo4jBatchSchema`](https://help.qlik.com/talend/en-US/components/8.0/neo4j/neo4j-component) (read 2026-09-27)
