Table Customization
Pass columns= to proof.dataset_strategy() or the @sqlproof decorator to
override selected columns while keeping the rest of the dataset schema-aware.
The keys are "table.column"; values can be Hypothesis strategies, fixed values,
or callables receiving a ColumnContext and returning a value.
Draw a dataset inside a Hypothesis test and use
proof.client_for_dataset(dataset) to load it. Overrides must satisfy the
schema’s constraints. An override replaces the normal generator, including
CHECK refinement and nullable-column handling. Use st.just(None) to force
SQL NULL in a nullable column.
Default-bearing columns are omitted unless requested explicitly. Single-column
primary keys use a separate assignment path and ignore ordinary columns=
overrides. A scenario can pin relationships to named rows’
generated keys; it does not provide arbitrary primary-key values.
proof.customize() is currently a placeholder and does not apply overrides.
Use columns= for working customizations.
See custom generators for default sampling limits and edge-case recipes, and FK distributions for controlling parent selection.