Create and manage tables

DynoTable creates and deletes tables, adds and drops global secondary indexes, and edits the handful of table settings you change most often — TTL, capacity mode, and deletion protection. You do not have to leave for the AWS console to start a new table or add an index.

Everything except Create table lives in one place: the Settings button in the table toolbar opens the Table dialog, and its left rail holds Secondary indexes and Settings.

Every action on this page writes to DynamoDB's control plane, so all of them need an active license or trial. See Activation.

DynoTable's Create table dialog: the table name, a partition key and sort key with their attribute types, and the on-demand and provisioned capacity choice.
DynoTable's Create table dialog: the table name, a partition key and sort key with their attribute types, and the on-demand and provisioned capacity choice.

Create a table

Right-click anywhere in the sidebar's table list, or open the command palette with Cmd/Ctrl+K and pick Create table. Fill in:

  • Table name — 3 to 255 characters, letters, digits, _, - and . only.
  • Partition key — an attribute name and its type: String, Number, or Binary.
  • Sort key — optional. Add sort key reveals it; Remove takes it away.
  • Capacity modeOn-demand (pay per request, no idle cost) or Provisioned with read and write capacity units.

The table opens in a tab as soon as DynamoDB accepts it.

Combinations DynamoDB refuses are caught before anything is sent, and the message names the problem rather than passing back a validation error — a sort key that repeats the partition key, provisioned capacity with no read or write units, or capacity units on an on-demand table.

Add or drop a global secondary index

Open the Table settings dialog and pick Secondary indexes. The pane lists every global and local secondary index with its keys, projection, and size.

Create index asks for:

  • Index name — 3 to 255 characters, same character set as a table name.
  • Partition key, and an optional sort key, each with a type.
  • ProjectionAll attributes (simplest, largest storage), Keys only (smallest, other attributes need a fetch from the base table), or Include plus the attributes you list, up to 20.
  • Read and write units, on a provisioned table only.

DynoTable refuses a duplicate index name, a sort key that repeats the index's partition key, an Include projection with nothing listed, and a key attribute whose type contradicts an existing attribute definition — that last message names the type the table already uses.

A new index shows Creating, then Backfilling while DynamoDB populates it. The pane polls until it settles. Deleting an index asks for confirmation first.

Two limits worth knowing, both DynamoDB's rather than ours:

  • Local secondary indexes are read-only here. DynamoDB fixes them when the table is created, so no tool can add or remove one afterwards.
  • An existing index cannot be edited. Change a projection by creating a replacement index and dropping the old one.

For which projection to pick, see index projections.

The Secondary indexes section of DynoTable's Table dialog, listing each global secondary index with its keys, projection and size.
The Secondary indexes section of DynoTable's Table dialog, listing each global secondary index with its keys, projection and size.

Table settings

The Settings section of the Table settings dialog holds three controls. All three are read-only while the table's status is anything other than ACTIVE — a table still settling from an earlier change says so. Capacity mode and TTL confirm in both directions; deletion protection confirms only when you turn it off, because switching it on takes nothing away.

Capacity mode switches between on-demand and provisioned, and edits read and write capacity units on a provisioned table. AWS limits how often you can switch back to provisioned; see on-demand throughput.

Time to Live (TTL) takes the attribute holding the expiry timestamp in epoch seconds, then enables expiry. Disabling TTL stops future expiry and keeps the items already in the table. The grid marks a TTL column and strikes expired items through — see browsing tables.

Deletion protection stops DynamoDB deleting the table at all, whoever asks and whatever their IAM permissions allow. Turning it off is confirmed separately.

The Settings section of DynoTable's Table dialog: capacity mode, Time to Live, and deletion protection.
The Settings section of DynoTable's Table dialog: capacity mode, Time to Live, and deletion protection.

Delete a table

Delete table sits in the Danger zone at the bottom of the Settings section. It is disabled while deletion protection is on.

Deleting asks you to retype the table name exactly. The table and every item in it go, DynamoDB has no undo, and the tab closes once the table is gone.

What stays in the AWS console

DynoTable covers the settings you change while working with a table's data. These need the AWS console or the CLI:

  • Backups, point-in-time recovery, and restores.
  • DynamoDB Streams and Kinesis data streams.
  • Global tables and replicas.
  • Contributor Insights and CloudWatch alarms.
  • Tags and resource-based policies.

The AI assistant and the MCP server cannot create, alter, or delete tables and indexes either. Those actions are yours, from the UI — nothing an agent drives can reach them.

Updated