Define table columns

Columns are the fields of a Warehouse table. Use the Columns step of a Dimension or Fact table, a Dictionary or a Static table to add and edit them, set their keys, defaults and permissions, or import them from a SQL query.

Add or edit a column

  1. Open the table. It opens in its own popup window. Go to the Columns step.
  2. Click Add new column. A row named New Column and a number appears.
  3. Click the name, type the name and press Enter. Clicking outside the cell also saves it.
  4. Choose a Data Domain. The domain fills Data Type. To pick the type yourself, choose Custom.
  5. Set the flags you need, for example M for a required column.
  6. To describe a column, click the message icon next to its name, type the description in Column description, and click Save.
  7. Click Apply.
Note

Column changes stay unsaved until you click Apply, and Revert discards them. Everything you changed on the step is saved together in one action: added, edited and deleted rows go in a single save, and a failed save applies nothing. A finished save reports "The columns have been updated successfully".

To add several columns at once, use the import button in the columns toolbar. Importing detects column definitions only, and a Dimension or Fact table remembers the last statement you used. See Import columns from SQL.

The columns grid

ColumnWhat it shows
NameThe column name.
CommentThe column description. It is hidden by default.
Data DomainThe business type. Choosing one sets Data Type.
Data TypeThe storage type. You can change it only when Data Domain is Custom.
PII DomainThe personal data type of the column.
PKPrimary Key.
FKForeign Key: a reference to another table.
MMandatory: the column is required.
CCComputed Column: a script for calculated values.
Default ValueThe value used when no value is given. Wrap text in single quotes, for example 'N/A'.
Permission GroupThe groups that get access to the column.
PCPartition Column. You cannot change it in the grid.

A table with no columns yet shows "No columns defined." The domain catalogue, its default value suggestions and the PII options are on Column data domains, defaults and PII. For every lock in the grid and why a cell cannot be changed, see The table columns grid.

Names and keys

System columns

Delete and reorder

PII domains on columns

Change a column's type

Use AI on columns

Permissions

What DataMind OS checks

Saving the step runs these checks, and the first failure shows as a notice:

Reserved-name and duplicate checks ignore capital letters, so Amount and amount are treated as the same name.

Questions, answered

Are all my column changes saved together?

Yes. Apply sends everything you changed on the step as one save: added rows, edits and deletions together. A failed save applies nothing, so the table stays as it was.

Why does "New Column" disappear when I click the name?

New Column is a placeholder. Clicking the cell clears it so you can type your own name; if you leave the name empty, the save reports Column name cannot be empty (Row ID: N).

Why can't I name a column Valid From?

Valid From is a reserved name. A custom column cannot use any name from the reserved list, whatever the capital letters. DataMind OS shows System reserved names found: ... when you save.

Why can't I delete a column?

A column stays when it is a system column, a transformation uses it, or a Mind uses it. The step marks each blocked row with "(system column)" or "(used in transformation)", and a column that Minds use comes back with a message that names those Minds and asks you to remove it from them first.

Why can't I edit a system column?

System columns are locked: hovering the lock icon shows "System columns cannot be edited." Two cells stay open: the PII Domain on Source ID and the Permission Group on Delete Flag.

Why can't I set a PII Domain on a column?

A locked column refuses it: PII cannot be enabled on locked column "X". Source ID is the one locked column that accepts a PII Domain. A View's columns cannot be tagged at all: "PII cannot be enabled on view tables".

What does an empty PII Domain mean?

An empty PII Domain means the column is not treated as personal data, so it stays out of the platform's PII handling. See PII detection.

Why can't I change the data type of a column that holds data?

DataMind OS checks the stored values first. When some cannot be converted to the new type, the change is refused and nothing is saved. The message begins with "TYPE_CHANGE_WOULD_NULL" and names the column, the number of values and an example. Truncate the table first, then change the type and reload the data; see Deploy, run, truncate and monitor tables.

Can AI write my column descriptions?

Yes, and it can suggest which columns should make up the primary key. Both helpers are refused on a table where any column has a PII Domain: "AI sample features are disabled for tables with PII columns".

Why does the Permission Group cell say "No permission groups added to table"?

The table has no permission groups yet. Click Add in General, then add groups under Permission Groups on the General step.

Which permission do I need to change columns?

Add/Modify Warehouse Objects, from the Data Layer permission category. Without it, saving is refused with a message that starts with "Access denied". See Warehouse permissions and row-level security.