sql - Access 关系问题导致数据未提取到正确的表

标签 sql database ms-access ms-access-2013

我的数据库似乎无法正常工作。在我一路上发现的其他事情中(!),我无法将 PAYMENT 表中的考试付款值显示在 EXAM 表中,就像 CLASS 表中的类(class)那样。

这是 Access 中的关系表。

我希望它显示 EXAM 表中的付款,但事实并非如此,并且只显示 PAYMENT 表中此类类(class)的条目,如下所示。

以下是我想要的考试 PAYMENT 表中的值

.

我无法从 Access 获取实际数据库的完整 SQL,因为它不允许,但我可以通过对所有表进行查询来获取一些 SQL,但请注意,我无法编写任何建议进入数据库后,只有我可以在可视关系屏幕中更改关系和连接类型:pastebin.com/RS6tT8C3

SELECT 
FROM (Parent INNER JOIN Student ON Parent.[Parent ID] = Student.[Parent ID]) INNER JOIN (([Exam Type] LEFT JOIN (Exam INNER JOIN [Exam Results] ON Exam.[Exam ID] = [Exam Results].[Exam ID]) ON [Exam Type].[Exam Type ID] = Exam.[Exam Type ID]) RIGHT JOIN (([Class Type] LEFT JOIN (Class INNER JOIN Attendance ON Class.[Class ID] = Attendance.[Class ID]) ON [Class Type].[Class Type ID] = Class.[Class Type ID]) RIGHT JOIN Payment ON Class.[Class ID] = Payment.[Class ID]) ON Exam.[Exam ID] = Payment.[Exam ID]) ON (Student.[Student ID] = Payment.[Student ID]) AND (Student.[Student ID] = [Exam Results].[Student ID]) AND (Student.[Student ID] = Attendance.[Student ID]);

一位非常有帮助的数据库管理员昨天在 IRC 上向我建议我应该这样做:

payments left join exams on examid = examid left join classes classid = classid

我相信我可以通过更改关系选项卡中的联接类型选项来做到这一点,但它似乎不起作用。我刚刚完成了 1 个数据库模块,没有使用 SQL 编程,所以这是一个陡峭的学习曲线!

事情已经到了一个阶段,一切似乎都太复杂了,我正在忘记事情,哈哈,如果有人能在接下来的几个小时内给我任何建议,因为我今天要交作业,那么我将非常感激。谢谢!

**我将包括 full database file还有。

最佳答案

首先让我们看看我们是否在同一页面上。当您选择子数据表时,您似乎希望能够看到考试付款。如果是这样,请转到检查表并切换到设计模式,然后选择属性表,然后将子数据表名称下的字段更改为您想要的表。然后匹配链接子字段链接主字段

下的[考试 ID]

enter image description here

PS。这是向用户呈现数据的理想方式,您应该考虑使用表单来更好地控制。只是一个旁注,即使偏离主题,在表名称或表列标题中包含空格也不是一个好习惯。

关于sql - Access 关系问题导致数据未提取到正确的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24545230/

相关文章:

sql - SQL Server 2008 中表格结果的分组和计数选择

sql - 如何更新或删除 varchar 列中的所有特殊字符

php - 上传多张图片到mysql数据库

python - 错误 - 多级文件夹内的 pypyodbc.win_create_mdb

sql - SQL Server 存储过程中的返回值

sql - 错误 (5) : PLS-00801: internal error [ph2csql_strdef_to_diana:bind]

sql - 请查看我的数据库模式 - 需要输入

ms-access - 使用 VBA Access 更新查询

c# - Entity Framework 核心和 MS Access

mysql - 了解数据库中的参照完整性