我该如何关联这些访问表而不丢失数据?

我该如何关联这些访问表而不丢失数据?

我有一个包含约 6k 条记录的 Excel 平面文件,我想将其放入 MS Access 数据库。原始 Excel 字段为:

姓名
地址
城市
状态
压缩
出生日期
案件编号
判刑日期
应付金额

我将 Excel 文件中的所有内容按列保存为较小的文本文件,例如:

姓名
ID
最后的
第一的
中间
后缀

地址
ID
第 1 行
城市
状态
压缩

生日
ID
日期

卡西诺
ID
案件编号
法院号码

被判刑
ID
判刑日期

金额
ID
应付金额

代理机构
ID

我将其中的每一个都导入到Access表中并确保它们没有错误。

到目前为止我已经建立了如下关系: 在此处输入图片描述

每个都已检查强制参照完整性和级联更新。

我的问题是平面文件中有许多重复的姓名、地址、出生日期,并且案件编号也不同;因为一个人可以有多起案件。

我该如何解决这个问题而不让宇宙崩溃?我对这种事情非常陌生,不知道该问什么问题 :(。

答案1

简而言之,没有灵丹妙药。没有什么可以帮你清理数据。你要么手动清理,要么编写程序,根据你定义的一些规则对数据进行规范化。

答案2

您的数据设计存在许多错误。

一个人可以有多少个生日?一个。所以生日作为字段属于 Names 表。我相信您的意思是一个人可以有多个地址。没关系,并且您有一个与许多可能的地址相关的名称 - 这很好。但您不能仅通过其主 ID 字段连接这两个表。这意味着名称 1 连接到地址 1 - 这可能是也可能不是真的。如果名称 1 连接到地址 5 和 7 会怎样?您必须在 Address 表中有一个名称 ID 字段。然后,地址 ID 5 和 ID 7 可以在 Address 表中具有名称 ID 1,从而建立您想要的连接。这称为外键。

然后您有三个表,Amounts、ToAgency、Sentence,它们都以一对一关系连接到 JP_Case 表。也就是说,每个 Case 只有一个 Amount、ToAgency 和 Sentence。就像 Name-Birthday 一样,如果 Case 只能有这三个值中的一个,那么它们应该是 JP_Case 表中的字段,而不是单独的表。

以下是关系数据设计教程这应该会让你走上正确的道路。

相关内容