【发布时间】:2013-03-06 21:06:34
【问题描述】:
我有多个(大约 9 个)具有一对多和多对一关系的访问表(所有表都以某种方式链接,有一个主表与所有表具有一对多和多对一关系)。我想将数据从 Excel 表中插入三个表中。
提供的 Excel 表仅包含三个链接表的数据。我怎样才能最好地解决这个问题?我在这里查看的插入查询有多复杂?
非常感谢任何建议。
编辑:
这是我的表结构:
主题
SubjectID (Autonumber) Primary Key
MasterID (Number) Foreign Key
Description (Text)
大师
MasterID (Autonumber) Primary Key
StatusID (Number) Foreign Key
StudentID (Text)
Description (Text)
状态
StatusID (Autonumber) Primary Key
Description (Text)
表关系:
Master (One) --> (Many) Subject
Status (One) --> (Many) Master
Excel 中的数据:
StudentID Subject Status
JP121 Math Active
SP223 Bio Active
JK111 Chem In Suspense
LS433 Bio In Active
NP833 Math In Active
SS777 Chem Active
BK299 Bio In Suspense
【问题讨论】:
-
好吧,如果您尝试使用单个查询,它可能会变得非常复杂。但是,如果您准备将其分解为简单的小查询,我们可以有一个不太复杂的解决方案。总体而言,如果不查看架构和 Excel 数据,很难在解决方案中为您提供帮助。
-
@TravisG 我绝对准备好将其分解为简单的小查询。我应该如何执行那些小查询?我的意思是按什么顺序?
-
我建议先去主表。由于主表将接触所有 9 个表,因此一旦主表准备好,您就可以更轻松地构建这些表。您可以采用的另一种方法是 XLS(macro) -> CSV,然后是 CSV -> ACCESS。
-
@TravisG 通过查询将数据插入 master 插入一条记录的次数与它与其他记录的关系一样多。所以一行将在主表中插入 9 次。
-
@HansUp 是的,我已经更新了我上面的问题。我用几个表格和一些来自 excel 的数据对其进行了简化
标签: sql ms-access vba ms-access-2007