Ms access Ms访问表设计-列表或新表
我有一张桌子:Ms access Ms访问表设计-列表或新表,ms-access,database-design,Ms Access,Database Design,我有一张桌子: tblA ID = Autonumber Price = Number Name = Text 字段[Name]包含列表中的值。该列表有2-3个值 我将在列表中添加2个以上的值,因此总共5个值 什么对我的数据库性能更好。 要列出的字段或创建另一个表并将值放在那里?什么对数据库大小和速度更有利 New Design: tblA tblB ID = Autonumber
tblA
ID = Autonumber
Price = Number
Name = Text
字段[Name]包含列表中的值。该列表有2-3个值
我将在列表中添加2个以上的值,因此总共5个值
什么对我的数据库性能更好。
要列出的字段或创建另一个表并将值放在那里?什么对数据库大小和速度更有利
New Design:
tblA tblB
ID = Autonumber NameID = Autonumber
Price = Number Name = Text
NameID = Number
多谢各位 查找表优于创建值列表
tblB
中添加sort\u by
数字字段,以便对列表进行自定义排序tblB
中添加inactive
Yes/No字段,轻松关闭任何值选择桌面,因为它易于维护和灵活。为了加快速度,您可以在字段上创建索引。如图所示的“新设计”未规范化。它将为价格创建重复的行。相反,1)消除
tblA.NameID
;2) 将tblB.NameID
字段替换为正常的数字长字段(不是自动编号),可能命名为类似tblA_ID
的名称。这是主表的外键;3) 将表tblB
重命名为[tblNames]
(只是强调它所包含的内容)像Access这样的关系数据库的全部目的是创建多个规范化的表。规范化是指消除冗余值并将数据组织成有效关系所采取的步骤。这里列出的资源和有用的网页太多了,所以我建议在网上搜索“数据库规范化”。其中一些可能很难理解,但回顾多种解释并在实践中尝试将有所帮助。@Santosh将索引(在我的表格中标记字段(*)以索引)更详细,请将其作为我问题的答案。