Access 数据库应用综合练习题
本练习集旨在通过实际场景,考察对 Microsoft Access 表设计、关系建立、查询编写、窗体设计及报表生成的综合应用能力。
第一部分:基础知识应用题
1:数据类型选择
在创建一个“学生信息表”时,请为以下字段选择最合适的 Access 数据类型:
- 学号:______
- 学生姓名:______
- 出生日期:______
- 成绩(保留两位小数):______
- 是否在校:______
- 家庭住址(长文本):______
2:主键与关系 - 问题 A:请简述什么是 主键 (Primary Key),以及在设计表时设置主键的作用。
- 问题 B:如果一个“部门表”和一个“员工表”之间存在“一个部门有多个员工”的关系,外键 (Foreign Key) 应该设置在哪个表中?请说明理由。
第二部分:查询设计实操题
假设你拥有以下两张表:
- 产品表 (Products):产品ID (PID), 产品名称 (PName), 类别 (Category), 单价 (UnitPrice), 库存量 (Stock)
- 订单详情表 (OrderDetails)

:订单ID (OID), 产品ID (PID), 销售数量 (Quantity), 销售日期 (SaleDate)
请写出实现以下需求的查询逻辑(或 SQL 语句):
- 查询 1(简单筛选):筛选出所有“类别”为“电子产品”且“单价”大于 1000 元的产品。
- 查询 2(计算字段):创建一个查询,计算每件产品的 总价值(计算公式:
总价值: [UnitPrice] [Stock])。 - 查询 3(多表连接):查询所有在 2026 年 10 月 1 日之后销售过的产品名称及其销售数量。
- 查询 4(聚合函数):统计每个“类别”下的产品总数,并计算该类别的平均单价。
第三部分:综合案例应用题
场景描述:图书管理系统
你需要为一个小图书馆设计一个数据库,包含以下需求:
- 书籍表:记录书号(主键)、书名、作者、类别、出版年份。
- 读者表:记录读者卡号(主键)、姓名、电话、注册日期。
- 借阅表:记录借阅 ID(主键)、书号(外键)、卡号(外键)、借书日期、应还日期、实际还书日期。

具体任务要求:
任务 1:数据库结构设计
- 创建上述三张表,并设置正确的数据类型。
- 在“关系”窗口中建立 一对多 的关系,并勾选 参照完整性。
任务 2:高级查询实现
- 未还书查询:查询所有“实际还书日期”为空的记录,并显示读者的姓名和书名。
- 热门书籍查询:统计每本书被借阅的次数,筛选出借阅次数超过 5 次的书籍。
任务 3:界面与输出设计
- 窗体设计:创建一个“借书登记”窗体,要求使用 组合框 (Combo Box) 让管理员从读者表中选择读者,从书籍表中选择书籍。
- 报表生成:创建一个“月度借阅统计报表”,要求按“类别”进行 分组,并在报表页脚显示本月借阅书籍的 总计数量。
第四部分:参考答案要点

第一部分要点:
- 学号 $rightarrow$ 短文本/数字;姓名 $rightarrow$ 短文本;日期 $rightarrow$ 日期/时间;成绩 $rightarrow$ 数字(双精度/单精度);是否在校 $rightarrow$ 是/否;住址 $rightarrow$ 长文本。
- 主键用于唯一标识记录,防止重复,外键应设在“员工表”中,因为员工属于部门(多对一)。
第二部分要点:
- 查询 1:条件行
Category = "电子产品"且UnitPrice > 1000。 - 查询 3:需将两表通过
PID连接,条件行SaleDate > #2026-10-01#。 - 查询 4:使用 汇总 (Totals) 行,
Category选“分组依据”,PID选“计数”,UnitPrice选“平均值”。
- 查询 1:条件行
第三部分要点:
- 关系:读者 $rightarrow$ 借阅 (1:N),书籍 $rightarrow$ 借阅 (1:N)。
- 窗体:重点在于
行来源 (Row Source)的 SQL 设置。 - 报表:利用 分组和排序 向导实现类别汇总。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复