内容正文:
编写说明:2027版山东省春季高考统一考试软件与应用技术类《考纲百套卷》,依据《软件与应用技术类专业知识考试标准》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共85份试卷,其中知识训练卷48份、专题训练卷25份、课程综合卷12份。
本试卷是第25卷,为知识训练卷,按《Access数据库应用操作》中“控件与子窗体”范围和要求编写。具体内容为:(6)掌握窗体控件的基本应用。(7)掌握子窗体的创建及应用。
山东省春季高考统一考试
软件与应用技术类《考纲百套卷》
第25卷 Access数据库应用操作——控件与子窗体
(考试时间:45分钟 满分:100分)
一、选择题(共25题,每题2分,共50分)
1.窗体中的文本框主要用于( )
A.创建打印机驱动
B.设置数据库密码
C.建立表间关系
D.显示或编辑字段值
【答案】D
【解析】文本框可以绑定到字段,用于显示和编辑文本、数字、日期等数据。
2.在设计视图中显示固定提示文字“联系电话”,最适合使用( )控件
A.列表框
B.复选框
C.标签
D.文本框
【答案】C
【解析】标签用于显示固定的说明和提示文字,通常不直接保存数据。
3.若要让用户从若干部门名称中选择一个值,且选项较多,适合使用( )
A.直线
B.组合框
C.标签
D.图像控件
【答案】B
【解析】组合框以列表方式提供选项,适合从多个值中选择一个并节省窗体空间。
4.需要在窗体中同时显示多个可供选择的项目时,常用的控件是( )
A.文本框
B.命令按钮
C.页眉
D.列表框
【答案】D
【解析】列表框可以同时显示多个选项,用户可以从中选择项目。
5.表示“是否通过审核”等布尔状态,通常使用( )控件
A.复选框
B.标签
C.图像控件
D.组合框
【答案】A
【解析】复选框适合表示是/否、真/假等布尔型数据。
6.在窗体中执行保存、关闭或打开其他窗体操作,通常使用( )控件
A.文本框
B.命令按钮
C.复选框
D.选项卡
【答案】B
【解析】命令按钮可以执行保存、关闭、打开对象等操作。
7.控件的“控件来源”属性用于指定( )
A.窗体窗口的标题
B.控件在窗体中的坐标
C.控件显示或编辑的数据来源
D.数据库文件的路径
【答案】C
【解析】控件来源可以是字段名、计算表达式或固定值,决定控件显示的内容。
8.组合框的“行来源”属性主要用于指定( )
A.下拉列表中的选项来源
B.窗体的记录保存位置
C.控件的边框宽度
D.数据库的备份方式
【答案】A
【解析】行来源决定组合框或列表框中显示哪些可供选择的项目。
9.若组合框的选项来自某张表中的字段,通常应将“行来源类型”设置为( )
A.窗体对象
B.表/查询
C.值列表以外的图片
D.宏对象
【答案】B
【解析】当组合框选项来自表或查询时,行来源类型应选择“表/查询”。
10.未与表字段绑定、只用于输入计算条件的文本框属于( )控件
A.未绑定控件
B.关系控件
C.主键控件
D.绑定控件
【答案】A
【解析】未绑定控件没有直接对应的表字段,常用于输入条件、显示提示或辅助计算。
11.文本框中使用“=Quantity*UnitPrice”作为控件来源时,该文本框主要显示( )
A.查询对象名称
B.表的主键
C.字段名称
D.计算结果
【答案】D
【解析】以等号开头的表达式可以作为计算控件来源,显示表达式计算得到的结果。
12.子窗体通常用于显示主窗体当前记录对应的( )记录
A.数据库对象列表
B.表结构设计
C.相关明细
D.窗体属性表
【答案】C
【解析】子窗体适合显示与主窗体当前记录相关的一组明细记录。
13.客户表与订单表之间通常是一对多关系,其中“1”端是( )
A.客户表
B.订单表
C.订单明细表中的数量字段
D.查询结果
【答案】A
【解析】一个客户可以有多张订单,因此客户表是关系的“一”端,订单表是“多”端。
14.在主窗体中嵌入子窗体后,承载子窗体的对象称为( )
A.记录选择器
B.字段列表
C.查询设计网格
D.子窗体控件
【答案】D
【解析】子窗体通常通过子窗体控件嵌入主窗体中,控件负责显示子窗体内容。
15.子窗体与主窗体自动联动显示相关记录,通常需要设置( )
A.打印机名称和纸张方向
B.链接主字段和链接子字段
C.字体名称和字号
D.边框颜色和线型
【答案】B
【解析】链接主字段和链接子字段用于建立主窗体当前记录与子窗体明细记录之间的对应关系。
16.主窗体的“客户编号”与子窗体的“客户编号”对应时,应分别设置为( )
A.链接主字段=订单编号,链接子字段=客户编号
B.链接主字段=客户名称,链接子字段=订单金额
C.链接主字段=客户编号,链接子字段=客户编号
D.链接主字段=窗体名称,链接子字段=表名称
【答案】C
【解析】两窗体通过同名或对应的关联字段联动,本题中两端均使用客户编号。
17.子窗体最适合表现主表和从表之间的( )数据结构
A.随机
B.一对一且无字段
C.没有关联
D.一对多
【答案】D
【解析】子窗体常用于在主窗体显示一条主表记录,同时在子窗体显示对应的多条从表记录。
18.使用子窗体向导创建子窗体时,首先应明确主窗体和子窗体之间的( )
A.页边距
B.图像格式
C.关联字段
D.字体颜色
【答案】C
【解析】向导需要依据主表和从表的关联字段建立主、子窗体之间的联动。
19.如果子窗体显示了所有明细记录而没有随主窗体变化,最可能需要检查( )
A.标签的标题文字
B.链接主字段和链接子字段
C.窗体的背景颜色
D.文本框的字号
【答案】B
【解析】主、子窗体链接字段设置错误或为空,会导致子窗体不能按当前主记录筛选明细。
20.子窗体的“默认视图”设置为“连续窗体”时,通常可以( )
A.只显示一个字段名称
B.隐藏所有记录
C.连续显示多条明细记录
D.自动创建数据库
【答案】C
【解析】连续窗体以多行形式显示多条明细记录,适合订单、借阅等明细数据。
21.若要在子窗体中显示订单明细,但不允许用户修改明细,通常将“允许编辑”设置为( )
A.否
B.是
C.自动编号
D.表/查询
【答案】A
【解析】允许编辑设置为否后,子窗体可以显示明细但不能通过窗体修改已有记录。
22.控件的“名称”属性主要用于( )
A.设置查询的排序顺序
B.指定字段的数据类型
C.决定表的主键
D.标识控件,便于在表达式或代码中引用
【答案】D
【解析】名称属性用于区分窗体中的控件,计算表达式或事件过程可以通过名称引用控件。
23.若组合框的“控件来源”绑定到EmployeeID,而“行来源”提供员工编号和姓名,选择员工后保存到表中的通常是( )
A.组合框的宽度
B.EmployeeID字段的值
C.员工姓名的字体
D.行来源查询名称
【答案】B
【解析】控件来源决定组合框把所选值保存到哪个字段,行来源只负责提供可选项目。
24.在设计视图中调整控件的左、上、宽度和高度,主要改变控件的( )
A.布局位置和尺寸
B.记录源查询
C.表间关系
D.字段数据类型
【答案】A
【解析】控件的位置和尺寸属性用于调整其在窗体中的布局,不会改变表结构。
25.创建主窗体和子窗体后,若主窗体显示部门,子窗体显示该部门员工,合理的设计是( )
A.主窗体和子窗体都不设置记录源
B.主窗体记录源为部门表,子窗体记录源为员工表,并通过部门编号链接
C.只设置标题,不设置链接字段
D.主窗体记录源为员工表,子窗体记录源为打印机
【答案】B
【解析】主窗体显示部门记录,子窗体显示员工明细,两者通过部门编号建立联动。
二、简答题(共5题,每题6分,共30分)
1.阅读SQL语句,写出查询结果。
CREATE TABLE Teams (TeamID TEXT(10), TeamName TEXT(30));
CREATE TABLE Members (MemberID TEXT(10), MemberName TEXT(20), TeamID TEXT(10), Duty TEXT(20));
INSERT INTO Teams
VALUES ('T11', '智能设备组');
INSERT INTO Teams
VALUES ('T12', '网络维护组');
INSERT INTO Members
VALUES ('M21', '沈阳', 'T11', '硬件调试');
INSERT INTO Members
VALUES ('M22', '顾宁', 'T11', '资料整理');
INSERT INTO Members
VALUES ('M23', '唐哲', 'T12', '线路检测');
SELECT t.TeamName, m.MemberName, m.Duty
FROM Teams AS t
INNER JOIN Members AS m
ON t.TeamID = m.TeamID
WHERE t.TeamID = 'T11'
ORDER BY m.MemberID ASC;
【答案】查询结果为:智能设备组 沈阳 硬件调试;智能设备组 顾宁 资料整理。
【解析】INNER JOIN连接小组和成员,WHERE筛选T11小组,ORDER BY按成员编号升序排列。
2.阅读SQL语句,写出查询结果。
CREATE TABLE Departments (DeptID TEXT(10), DeptName TEXT(30));
CREATE TABLE Staff (StaffID TEXT(10), StaffName TEXT(20), DeptID TEXT(10), Salary INTEGER, Allowance INTEGER);
INSERT INTO Departments
VALUES ('D11', '教务部');
INSERT INTO Departments
VALUES ('D12', '实训部');
INSERT INTO Staff
VALUES ('F21', '何璇', 'D11', 5200, 600);
INSERT INTO Staff
VALUES ('F22', '罗诚', 'D12', 4800, 800);
INSERT INTO Staff
VALUES ('F23', '叶青', 'D12', 6100, 500);
INSERT INTO Staff
VALUES ('F24', '蒋林', 'D11', 5700, 300);
SELECT d.DeptName, s.StaffName, s.Salary + s.Allowance AS TotalPay
FROM Departments AS d
INNER JOIN Staff AS s
ON d.DeptID = s.DeptID
WHERE s.Salary >= 5200
ORDER BY TotalPay DESC;
【答案】查询结果为:实训部 叶青 6600;教务部 蒋林 6000;教务部 何璇 5800。
【解析】查询保留Salary不低于5200的员工,TotalPay由Salary与Allowance相加得到,并按TotalPay降序排列。
3.阅读SQL语句,写出查询结果。
CREATE TABLE Courses (CourseID TEXT(10), CourseName TEXT(30));
CREATE TABLE ExamResults (CourseID TEXT(10), StudentID TEXT(10), Score INTEGER);
INSERT INTO Courses
VALUES ('C11', '数据库应用');
INSERT INTO Courses
VALUES ('C12', '网络基础');
INSERT INTO Courses
VALUES ('C13', '界面设计');
INSERT INTO ExamResults
VALUES ('C11', 'S21', 86);
INSERT INTO ExamResults
VALUES ('C11', 'S22', 94);
INSERT INTO ExamResults
VALUES ('C12', 'S23', 78);
INSERT INTO ExamResults
VALUES ('C13', 'S24', 88);
SELECT c.CourseName, COUNT(*) AS StudentCount, AVG(e.Score) AS AverageScore
FROM Courses AS c
INNER JOIN ExamResults AS e
ON c.CourseID = e.CourseID
GROUP BY c.CourseName
HAVING AVG(e.Score) >= 85
ORDER BY AverageScore DESC;
【答案】查询结果为:数据库应用 2 90;界面设计 1 88。
【解析】连接课程和成绩后按课程名称分组,HAVING筛选平均分不低于85的课程,最后按平均分降序排列。
4.阅读SQL语句,写出查询结果。
CREATE TABLE ServiceTickets (TicketID TEXT(10), TicketTitle TEXT(30), Urgency TEXT(10), Status TEXT(10), Hours INTEGER);
INSERT INTO ServiceTickets
VALUES ('K31', '打印机卡纸', '高', '处理中', 2);
INSERT INTO ServiceTickets
VALUES ('K32', '账号权限申请', '中', '待处理', 1);
INSERT INTO ServiceTickets
VALUES ('K33', '网络端口故障', '高', '已完成', 4);
INSERT INTO ServiceTickets
VALUES ('K34', '投影画面异常', '低', '处理中', 3);
SELECT TicketID, TicketTitle, Hours, IIF(Urgency = '高', '优先', '普通') AS Mark
FROM ServiceTickets
WHERE Status <> '已完成'
ORDER BY Hours DESC, TicketID ASC;
【答案】查询结果为:K34 投影画面异常 3 普通;K31 打印机卡纸 2 优先;K32 账号权限申请 1 普通。
【解析】WHERE排除已完成工单,IIF将高紧急度标记为“优先”,ORDER BY先按处理时长降序再按工单编号升序排列。
5.阅读SQL语句,写出查询结果。
CREATE TABLE Vehicles (VehicleID TEXT(10), VehicleName TEXT(30), Department TEXT(20));
CREATE TABLE Repairs (RepairID TEXT(10), VehicleID TEXT(10), RepairType TEXT(20), Cost INTEGER);
INSERT INTO Vehicles
VALUES ('V41', '巡检车A', '后勤处');
INSERT INTO Vehicles
VALUES ('V42', '运输车B', '实训中心');
INSERT INTO Vehicles
VALUES ('V43', '服务车C', '后勤处');
INSERT INTO Repairs
VALUES ('R41', 'V41', '更换轮胎', 760);
INSERT INTO Repairs
VALUES ('R42', 'V42', '保养', 420);
INSERT INTO Repairs
VALUES ('R43', 'V43', '更换电瓶', 980);
SELECT v.VehicleName, r.RepairType, r.Cost
FROM Vehicles AS v
INNER JOIN Repairs AS r
ON v.VehicleID = r.VehicleID
WHERE r.Cost >= 700
ORDER BY r.Cost DESC;
【答案】查询结果为:服务车C 更换电瓶 980;巡检车A 更换轮胎 760。
【解析】INNER JOIN连接车辆和维修记录,WHERE筛选维修费用不低于700的记录,并按费用降序排列。
三、案例分析题(共1题,共10分)
1.某校要创建“客户订单子窗体”,子窗体记录源应显示当前客户的未结算订单及订单金额,下面SQL中有一处连接条件错误,请改正为可用于子窗体的查询。
CREATE TABLE Customers (CustomerID TEXT(10) PRIMARY KEY, CustomerName TEXT(30));
CREATE TABLE Orders (OrderID TEXT(10) PRIMARY KEY, CustomerID TEXT(10), OrderDate TEXT(10), OrderStatus TEXT(10), Amount INTEGER);
INSERT INTO Customers
VALUES ('C31', '启航公司');
INSERT INTO Customers
VALUES ('C32', '远景公司');
INSERT INTO Orders
VALUES ('O31', 'C31', '2026-07-01', '未结算', 1260);
INSERT INTO Orders
VALUES ('O32', 'C31', '2026-07-04', '已结算', 980);
INSERT INTO Orders
VALUES ('O33', 'C32', '2026-07-06', '未结算', 1580);
SELECT c.CustomerName, o.OrderID, o.OrderDate, o.Amount
FROM Customers AS c
INNER JOIN Orders AS o
ON c.CustomerID = o.OrderID
WHERE o.OrderStatus = '未结算'
ORDER BY o.OrderID ASC;
【答案】
CREATE TABLE Customers (CustomerID TEXT(10) PRIMARY KEY, CustomerName TEXT(30));
CREATE TABLE Orders (OrderID TEXT(10) PRIMARY KEY, CustomerID TEXT(10), OrderDate TEXT(10), OrderStatus TEXT(10), Amount INTEGER);
INSERT INTO Customers
VALUES ('C31', '启航公司');
INSERT INTO Customers
VALUES ('C32', '远景公司');
INSERT INTO Orders
VALUES ('O31', 'C31', '2026-07-01', '未结算', 1260);
INSERT INTO Orders
VALUES ('O32', 'C31', '2026-07-04', '已结算', 980);
INSERT INTO Orders
VALUES ('O33', 'C32', '2026-07-06', '未结算', 1580);
SELECT c.CustomerName, o.OrderID, o.OrderDate, o.Amount
FROM Customers AS c
INNER JOIN Orders AS o
ON c.CustomerID = o.CustomerID
WHERE o.OrderStatus = '未结算'
ORDER BY o.OrderID ASC;
【解析】将INNER JOIN中的连接条件o.OrderID改为o.CustomerID,其他语句保持不变。
四、综合应用题(共1题,共10分)
1.编写Access数据库任务:创建Customers、Products和Orders三张表并添加记录;编写可作为“客户订单子窗体”记录源的SQL查询,显示客户编号、客户名称、订单编号、商品名称、数量、单价、金额和订单状态,只显示待发货且数量不少于2的订单,并按客户编号和订单编号升序排列;同时给出主窗体和子窗体的记录源及链接属性设置。
【答案】
CREATE TABLE Customers (CustomerID TEXT(10) PRIMARY KEY, CustomerName TEXT(30) NOT NULL, CustomerLevel TEXT(10));
CREATE TABLE Products (ProductID TEXT(10) PRIMARY KEY, ProductName TEXT(30) NOT NULL, UnitPrice INTEGER);
CREATE TABLE Orders (OrderID TEXT(10) PRIMARY KEY, CustomerID TEXT(10) NOT NULL, ProductID TEXT(10) NOT NULL, Quantity INTEGER, OrderStatus TEXT(10));
INSERT INTO Customers
VALUES ('C41', '星河科技', '重点');
INSERT INTO Customers
VALUES ('C42', '明远实业', '普通');
INSERT INTO Customers
VALUES ('C43', '蓝桥服务', '普通');
INSERT INTO Products
VALUES ('P41', '无线控制器', 860);
INSERT INTO Products
VALUES ('P42', '数据采集终端', 1280);
INSERT INTO Products
VALUES ('P43', '机房标签机', 420);
INSERT INTO Products
VALUES ('P44', '网络配线架', 360);
INSERT INTO Orders
VALUES ('O41', 'C41', 'P42', 3, '待发货');
INSERT INTO Orders
VALUES ('O42', 'C41', 'P43', 1, '已发货');
INSERT INTO Orders
VALUES ('O43', 'C42', 'P41', 4, '待发货');
INSERT INTO Orders
VALUES ('O44', 'C42', 'P44', 2, '待发货');
INSERT INTO Orders
VALUES ('O45', 'C43', 'P42', 1, '待发货');
SELECT c.CustomerID, c.CustomerName, o.OrderID, p.ProductName, o.Quantity, p.UnitPrice, p.UnitPrice * o.Quantity AS Amount, o.OrderStatus
FROM (Customers AS c
INNER JOIN Orders AS o
ON c.CustomerID = o.CustomerID)
INNER JOIN Products AS p
ON o.ProductID = p.ProductID
WHERE o.OrderStatus = '待发货' AND o.Quantity >= 2
ORDER BY c.CustomerID ASC, o.OrderID ASC;
MainForm.RecordSource = "Customers"
SubForm.Name = "sfrmCustomerOrders"
SubForm.RecordSource = "该查询"
LinkMasterFields = "CustomerID"
LinkChildFields = "CustomerID"
SubForm.DefaultView = "连续窗体"
SubForm.AllowEdits = No
SubForm.AllowAdditions = No
SubForm.AllowDeletions = No
【解析】先建立客户、商品和订单三张表并添加数据;查询通过两次INNER JOIN取得客户、商品和订单信息,计算每笔订单金额,WHERE筛选待发货且数量不低于2的订单,ORDER BY按客户编号和订单编号升序排列。主窗体记录源设为Customers,子窗体记录源设为该查询,并通过CustomerID设置链接主字段和链接子字段,使子窗体随当前客户显示对应订单;子窗体设置为连续窗体并关闭编辑、添加和删除权限。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
编写说明:2027版山东省春季高考统一考试软件与应用技术类《考纲百套卷》,依据《软件与应用技术类专业知识考试标准》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共85份试卷,其中知识训练卷48份、专题训练卷25份、课程综合卷12份。
本试卷是第25卷,为知识训练卷,按《Access数据库应用操作》中“控件与子窗体”范围和要求编写。具体内容为:(6)掌握窗体控件的基本应用。(7)掌握子窗体的创建及应用。
山东省春季高考统一考试
软件与应用技术类《考纲百套卷》
第25卷 Access数据库应用操作——控件与子窗体
(考试时间:45分钟 满分:100分)
一、选择题(共25题,每题2分,共50分)
1.窗体中的文本框主要用于( )
A.创建打印机驱动
B.设置数据库密码
C.建立表间关系
D.显示或编辑字段值
2.在设计视图中显示固定提示文字“联系电话”,最适合使用( )控件
A.列表框
B.复选框
C.标签
D.文本框
3.若要让用户从若干部门名称中选择一个值,且选项较多,适合使用( )
A.直线
B.组合框
C.标签
D.图像控件
4.需要在窗体中同时显示多个可供选择的项目时,常用的控件是( )
A.文本框
B.命令按钮
C.页眉
D.列表框
5.表示“是否通过审核”等布尔状态,通常使用( )控件
A.复选框
B.标签
C.图像控件
D.组合框
6.在窗体中执行保存、关闭或打开其他窗体操作,通常使用( )控件
A.文本框
B.命令按钮
C.复选框
D.选项卡
7.控件的“控件来源”属性用于指定( )
A.窗体窗口的标题
B.控件在窗体中的坐标
C.控件显示或编辑的数据来源
D.数据库文件的路径
8.组合框的“行来源”属性主要用于指定( )
A.下拉列表中的选项来源
B.窗体的记录保存位置
C.控件的边框宽度
D.数据库的备份方式
9.若组合框的选项来自某张表中的字段,通常应将“行来源类型”设置为( )
A.窗体对象
B.表/查询
C.值列表以外的图片
D.宏对象
10.未与表字段绑定、只用于输入计算条件的文本框属于( )控件
A.未绑定控件
B.关系控件
C.主键控件
D.绑定控件
11.文本框中使用“=Quantity*UnitPrice”作为控件来源时,该文本框主要显示( )
A.查询对象名称
B.表的主键
C.字段名称
D.计算结果
12.子窗体通常用于显示主窗体当前记录对应的( )记录
A.数据库对象列表
B.表结构设计
C.相关明细
D.窗体属性表
13.客户表与订单表之间通常是一对多关系,其中“1”端是( )
A.客户表
B.订单表
C.订单明细表中的数量字段
D.查询结果
14.在主窗体中嵌入子窗体后,承载子窗体的对象称为( )
A.记录选择器
B.字段列表
C.查询设计网格
D.子窗体控件
15.子窗体与主窗体自动联动显示相关记录,通常需要设置( )
A.打印机名称和纸张方向
B.链接主字段和链接子字段
C.字体名称和字号
D.边框颜色和线型
16.主窗体的“客户编号”与子窗体的“客户编号”对应时,应分别设置为( )
A.链接主字段=订单编号,链接子字段=客户编号
B.链接主字段=客户名称,链接子字段=订单金额
C.链接主字段=客户编号,链接子字段=客户编号
D.链接主字段=窗体名称,链接子字段=表名称
17.子窗体最适合表现主表和从表之间的( )数据结构
A.随机
B.一对一且无字段
C.没有关联
D.一对多
18.使用子窗体向导创建子窗体时,首先应明确主窗体和子窗体之间的( )
A.页边距
B.图像格式
C.关联字段
D.字体颜色
19.如果子窗体显示了所有明细记录而没有随主窗体变化,最可能需要检查( )
A.标签的标题文字
B.链接主字段和链接子字段
C.窗体的背景颜色
D.文本框的字号
20.子窗体的“默认视图”设置为“连续窗体”时,通常可以( )
A.只显示一个字段名称
B.隐藏所有记录
C.连续显示多条明细记录
D.自动创建数据库
21.若要在子窗体中显示订单明细,但不允许用户修改明细,通常将“允许编辑”设置为( )
A.否
B.是
C.自动编号
D.表/查询
22.控件的“名称”属性主要用于( )
A.设置查询的排序顺序
B.指定字段的数据类型
C.决定表的主键
D.标识控件,便于在表达式或代码中引用
23.若组合框的“控件来源”绑定到EmployeeID,而“行来源”提供员工编号和姓名,选择员工后保存到表中的通常是( )
A.组合框的宽度
B.EmployeeID字段的值
C.员工姓名的字体
D.行来源查询名称
24.在设计视图中调整控件的左、上、宽度和高度,主要改变控件的( )
A.布局位置和尺寸
B.记录源查询
C.表间关系
D.字段数据类型
25.创建主窗体和子窗体后,若主窗体显示部门,子窗体显示该部门员工,合理的设计是( )
A.主窗体和子窗体都不设置记录源
B.主窗体记录源为部门表,子窗体记录源为员工表,并通过部门编号链接
C.只设置标题,不设置链接字段
D.主窗体记录源为员工表,子窗体记录源为打印机
二、简答题(共5题,每题6分,共30分)
1.阅读SQL语句,写出查询结果。
CREATE TABLE Teams (TeamID TEXT(10), TeamName TEXT(30));
CREATE TABLE Members (MemberID TEXT(10), MemberName TEXT(20), TeamID TEXT(10), Duty TEXT(20));
INSERT INTO Teams
VALUES ('T11', '智能设备组');
INSERT INTO Teams
VALUES ('T12', '网络维护组');
INSERT INTO Members
VALUES ('M21', '沈阳', 'T11', '硬件调试');
INSERT INTO Members
VALUES ('M22', '顾宁', 'T11', '资料整理');
INSERT INTO Members
VALUES ('M23', '唐哲', 'T12', '线路检测');
SELECT t.TeamName, m.MemberName, m.Duty
FROM Teams AS t
INNER JOIN Members AS m
ON t.TeamID = m.TeamID
WHERE t.TeamID = 'T11'
ORDER BY m.MemberID ASC;
2.阅读SQL语句,写出查询结果。
CREATE TABLE Departments (DeptID TEXT(10), DeptName TEXT(30));
CREATE TABLE Staff (StaffID TEXT(10), StaffName TEXT(20), DeptID TEXT(10), Salary INTEGER, Allowance INTEGER);
INSERT INTO Departments
VALUES ('D11', '教务部');
INSERT INTO Departments
VALUES ('D12', '实训部');
INSERT INTO Staff
VALUES ('F21', '何璇', 'D11', 5200, 600);
INSERT INTO Staff
VALUES ('F22', '罗诚', 'D12', 4800, 800);
INSERT INTO Staff
VALUES ('F23', '叶青', 'D12', 6100, 500);
INSERT INTO Staff
VALUES ('F24', '蒋林', 'D11', 5700, 300);
SELECT d.DeptName, s.StaffName, s.Salary + s.Allowance AS TotalPay
FROM Departments AS d
INNER JOIN Staff AS s
ON d.DeptID = s.DeptID
WHERE s.Salary >= 5200
ORDER BY TotalPay DESC;
3.阅读SQL语句,写出查询结果。
CREATE TABLE Courses (CourseID TEXT(10), CourseName TEXT(30));
CREATE TABLE ExamResults (CourseID TEXT(10), StudentID TEXT(10), Score INTEGER);
INSERT INTO Courses
VALUES ('C11', '数据库应用');
INSERT INTO Courses
VALUES ('C12', '网络基础');
INSERT INTO Courses
VALUES ('C13', '界面设计');
INSERT INTO ExamResults
VALUES ('C11', 'S21', 86);
INSERT INTO ExamResults
VALUES ('C11', 'S22', 94);
INSERT INTO ExamResults
VALUES ('C12', 'S23', 78);
INSERT INTO ExamResults
VALUES ('C13', 'S24', 88);
SELECT c.CourseName, COUNT(*) AS StudentCount, AVG(e.Score) AS AverageScore
FROM Courses AS c
INNER JOIN ExamResults AS e
ON c.CourseID = e.CourseID
GROUP BY c.CourseName
HAVING AVG(e.Score) >= 85
ORDER BY AverageScore DESC;
4.阅读SQL语句,写出查询结果。
CREATE TABLE ServiceTickets (TicketID TEXT(10), TicketTitle TEXT(30), Urgency TEXT(10), Status TEXT(10), Hours INTEGER);
INSERT INTO ServiceTickets
VALUES ('K31', '打印机卡纸', '高', '处理中', 2);
INSERT INTO ServiceTickets
VALUES ('K32', '账号权限申请', '中', '待处理', 1);
INSERT INTO ServiceTickets
VALUES ('K33', '网络端口故障', '高', '已完成', 4);
INSERT INTO ServiceTickets
VALUES ('K34', '投影画面异常', '低', '处理中', 3);
SELECT TicketID, TicketTitle, Hours, IIF(Urgency = '高', '优先', '普通') AS Mark
FROM ServiceTickets
WHERE Status <> '已完成'
ORDER BY Hours DESC, TicketID ASC;
5.阅读SQL语句,写出查询结果。
CREATE TABLE Vehicles (VehicleID TEXT(10), VehicleName TEXT(30), Department TEXT(20));
CREATE TABLE Repairs (RepairID TEXT(10), VehicleID TEXT(10), RepairType TEXT(20), Cost INTEGER);
INSERT INTO Vehicles
VALUES ('V41', '巡检车A', '后勤处');
INSERT INTO Vehicles
VALUES ('V42', '运输车B', '实训中心');
INSERT INTO Vehicles
VALUES ('V43', '服务车C', '后勤处');
INSERT INTO Repairs
VALUES ('R41', 'V41', '更换轮胎', 760);
INSERT INTO Repairs
VALUES ('R42', 'V42', '保养', 420);
INSERT INTO Repairs
VALUES ('R43', 'V43', '更换电瓶', 980);
SELECT v.VehicleName, r.RepairType, r.Cost
FROM Vehicles AS v
INNER JOIN Repairs AS r
ON v.VehicleID = r.VehicleID
WHERE r.Cost >= 700
ORDER BY r.Cost DESC;
三、案例分析题(共1题,共10分)
1.某校要创建“客户订单子窗体”,子窗体记录源应显示当前客户的未结算订单及订单金额,下面SQL中有一处连接条件错误,请改正为可用于子窗体的查询。
CREATE TABLE Customers (CustomerID TEXT(10) PRIMARY KEY, CustomerName TEXT(30));
CREATE TABLE Orders (OrderID TEXT(10) PRIMARY KEY, CustomerID TEXT(10), OrderDate TEXT(10), OrderStatus TEXT(10), Amount INTEGER);
INSERT INTO Customers
VALUES ('C31', '启航公司');
INSERT INTO Customers
VALUES ('C32', '远景公司');
INSERT INTO Orders
VALUES ('O31', 'C31', '2026-07-01', '未结算', 1260);
INSERT INTO Orders
VALUES ('O32', 'C31', '2026-07-04', '已结算', 980);
INSERT INTO Orders
VALUES ('O33', 'C32', '2026-07-06', '未结算', 1580);
SELECT c.CustomerName, o.OrderID, o.OrderDate, o.Amount
FROM Customers AS c
INNER JOIN Orders AS o
ON c.CustomerID = o.OrderID
WHERE o.OrderStatus = '未结算'
ORDER BY o.OrderID ASC;
四、综合应用题(共1题,共10分)
1.编写Access数据库任务:创建Customers、Products和Orders三张表并添加记录;编写可作为“客户订单子窗体”记录源的SQL查询,显示客户编号、客户名称、订单编号、商品名称、数量、单价、金额和订单状态,只显示待发货且数量不少于2的订单,并按客户编号和订单编号升序排列;同时给出主窗体和子窗体的记录源及链接属性设置。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$