igrp
05/28/2026, 4:10 PMstreams:
bi.bi_tasks:
mode: full-refresh
primary_key: id
update_key: create_ts
columns:
id: uuid | value is not null
create_ts: timestamptz | value is not null
is_deleted: bool | value is not nullflarco
05/28/2026, 8:56 PMtarget_options.table_ddl https://docs.slingdata.io/concepts/replication/target-options#table-ddlflarco
05/28/2026, 8:58 PMvalue is not null is a runtime constraint, which is evaluated as data passses through sling process. For DDL construction, right now you have to use table_ddl. I do think there is some UX improvement we can make here with columns to control nullable columns.igrp
05/29/2026, 8:14 AMflarco
05/29/2026, 10:03 AMyaml
streams:
bi.bi_tasks:
mode: full-refresh
primary_key: id
update_key: create_ts
columns:
id: uuid not null # not null would translate into DDL
create_ts: timestamptz not null # same here
is_deleted: bool not null | value is not null # ddl + runtime constraints enabled here