这种数据库设计违反了哪个范式?

WBOY
Libérer: 2016-10-24 00:12:41
original
1113 Les gens l'ont consulté

比如说一个购物车数据表,有人是这样设计的,cert(id,uid,item1,item2,item3。。。),而正确做法应该是分两张表,cert(cert_id,item),cert(uid,cert_id)。

那么请问一下不正确的那张表违反了什么范式?为什么?

回复内容:

比如说一个购物车数据表,有人是这样设计的,cert(id,uid,item1,item2,item3。。。),而正确做法应该是分两张表,cert(cert_id,item),cert(uid,cert_id)。

那么请问一下不正确的那张表违反了什么范式?为什么?

数据库设计错了,certid和uid可能确定多个item,表项都不一样。除非第一个表item是多值属性,那么这违反了第4范式。同时由于certid决定item所以第一个表存在部分依赖第2范式也不满足

我觉得正常,规范是死的,只有灵活变通才合理

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal