Skilirium

Recognises a lossy or unconstrained vertical split

K-604 · Skill knobit · Activity: Design the physical data model · Competence: Data modelling

One entity split into two tables for width or access, where the tables do not share the key, or the one-to-one relationship between them is not enforced. Joining back produces rows that never existed, or one row gets two extensions. A dependency spanning both parts has no key to enforce it.

Can AI do this?

Not tested yet

No AI benchmark covers this knobit yet. New results are announced in the Can AI Do the Job? newsletter.

What it looks like in practice

Expected result: The split and its missing key or constraint

How it is assessed: Flags the deficient case and passes the acceptable one. Deficient: account and account_interest_terms, the second with its own surrogate and joined on the product code: two accounts on one product give four rows. Or account_interest_terms.account_id with an FK but no unique constraint Acceptable: Both tables keyed on account_id; in the extension the primary key is also the foreign key, so one-to-one is enforced; whether the extension is optional is stated

Also known as: Lossy or unconstrained vertical split (physical model)

Related knobits

Builds on

All 40 knobits of Design the physical data model.

Source: Review checklist 06-physical, row 4; Heath 1971; Rissanen 1977; S&W 12.6; E&N 17.7