Microsoft Access中的1:N关系问题
|
我有以下表格(我将其缩小版以关注此问题):
Loan (loan_id, loan_info, ..., handling1_id, handling2_id)
Handling (handling_id, handling_info, ...)
在我的模型中,每个贷款都与0-2处理相关联,但实际上存在两个1:1关系,因为handleing1_id必须与handling2_id不同,并且不能有多个与同一处理相关的贷款。
我知道从数据库的角度对此建模的正确方法是在处理指向贷款的FK中创建。但是,如果我采用这种方式,即使没有与贷款相关的处理,每次都必须阅读两个表。
我的Web应用程序将始终显示贷款及其处理的信息。通过这种方式,应用程序将读取Loan表,并且仅在handle1_id,handling2_id字段中的至少一个不为null时,才读取Handling表,因此它将避免读取Handling表(更好的性能)。
问题是,当我在“访问”面板中创建此关系并将“贷款”字段handling1_id和handling2_id设置为唯一时(它们也应该彼此不同,但我认为只能通过脚本来完成)并设置参照完整性,自动更正关系,并认为每个处理都必须与贷款相关,
因此我不能在不与贷款相关的情况下插入“处理”。
这是我建立的关系:
关系1
当我关闭并再次打开它时,Access已创建了以下代码:
关系2
解决这个问题有什么建议吗?
提前谢谢!
没有找到相关结果
已邀请:
0 个回复