2016-07-18 52 views
0

我有一些从数据库中获取数据的经验,但没有太多的设计经验。为了解决这个问题,我正在采取一些个人项目,并试图在访问中创建它们。我遇到了一个我能够得到解决方案的问题,但我觉得它很笨拙,希望对我能做得更好的事情有一些看法。窗体功能性表格存储

我目前的项目是每月预算。在这个阶段,我想将表单中显示如下:

  • 类别
    • 子类别BUDGET_AMOUNT
    • 子类别BUDGET_AMOUNT
  • 类别
    • 撒哈拉类别Budget_Amount

我发现,我能做到这一点,如果所有的子类都在一个表中的字段和类别名称是硬编码为形式的标签。不过,我想我的表结构是这样的:
类别:
ID
CATEGORY_NAME

子类别:
ID
子类别 ID_Category
Show_Category

预算: Id
子分类ID
Budget_Amount

我想要这个结构的原因是,并不是所有的子类别都会每个月使用一次,在我看来,匹配什么是花费的预算经文会更容易。我也试图尽量减少数据库占用的空间。有什么方法可以轻松做到这一点?还是仅限于我目前的解决方案?

回答

0

我会首先深入正常化原则,因为您似乎对这些原则还不太熟悉。 “我想要这个结构的原因......”并不是一个很好的理由。 你的基础是一个健全的规范化数据库结构。

我建议你组织你的表是这样的:

tblCategory - > CATID(自动编号PK),Categorie tblSubCategory - > SubCatID(自动编号,PK),CATID(数,FK),子类别

至于预算,我预计预算会与项目挂钩。将预算直接与任何类别联系起来没有合乎逻辑的理由。 我们需要更多和更明确的信息来说明你想达到的目标。

类似的问题:

Database Design Question - Categories/Subcategories

有网站,可以帮助你开始了解在MS Access设计,例如

http://www.functionx.com/access/index.htm