|
|
|
|
|
by fernmyth
390 days ago
|
|
> If this happens, the designer had a error in his design, and should extend the design to accommodate the facts that escaped him at design time. Errors in the initial design should be assumed as the default. Wise software engineering should make change easy. Constraints on natural keys are business logic, not laws of mathematical truth. They are subject to change and often violated in the real world. The database as record-keeping engine should only enforce constraints on artificial keys that maintain its integrity for tracking record identity, history, and references. Your database may not be primarily a record-keeping engine, and your tradeoffs may be different. |
|
I don't think I said that errors would not happen.