北外2017数据库原理与应用第2次作业及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库原理与应用(第2次)作业及答案
题目
1.建立“员工客户信息查询窗”,以“三表综合查询”为数据源,建立如下两个图所示的多页窗体。
2.以员工表为数据源,选择所有字段所有记录,用向导创建“员工报表”,样式自定。
3.以客户表为数据源,选择所有字段所有记录,用向导创建“客户报表”,样式自定。
4.以订单表为数据源,选择所有字段所有记录,用向导创建“订单报表”,样式自定。
5.以订单表为数据源,按下左图建立“按月统计销售总额报表”,要求按月分组统计销售总额,在每组中的记录要求按日期升序排列。
6.按下右图所示,建立“按客户统计报表”,要求统计出每位客户的订单数及销售总额,不同客户的信息放置在不同页。
答案:
1.打开“销售管理系统”数据库,打开窗体的设计视图,选择“三表综合查询”为数据源,创建一个选项卡控件,按图所示将员工号、姓名、职务字段拖入“页1”控件,将页1 的标题改为“员工信息”;按图所示将客户编号、客户单位名称、电话、邮箱字段拖入到页2控件,将页2的标题改为“客户信息”。
以“员工客户信息查询窗”为名保存。
2.打开报表向导,选择员工表为数据源,选择所有字段,选择某种样式,以“员工报表”为名保存。
3.打开报表向导,选择客户表为数据源,选择所有字段,选择某种样式,以“客户报表”为名保存。
4.打开报表向导,选择订单表为数据源,选择所有字段,选择某种样式,以“订单报表”为名保存。
5.打开报表的设计视图,选择订单表为数据源。
添加组页眉与组页脚:在“排序与分组”框中选择订货日期字段,如右图所示,对第一个订货日期设置参数;对第二个订货日期则只选择升序其余取默认值,即对第二个订货日期的组页眉、组页脚都设置为否,分组形式为“每一个值”。
页面页眉中用标签添加标题:按月统计销售总额报表。
按图排放字段,其中字段的附加标签应该放置在组页眉。
添加适当的直线控件以起分隔作用。
在组页脚添加一个文本框作为计算框,文本框的附加标签标题为:销售总额,文本中的公式为:=sum(销售额)
以“按月统计销售总额报表”为名保存。
6.打开报表的设计视图,在报表属性中击记录源右侧的“…”按钮,打开“SQL语句:查询生成器”窗口,选择客户表与订单表,选择图中所需的所有字段。
添加“客户单位名称”组页眉、组页脚。
页面页眉中用标签添加标题:客户订单、销售额统计。
将客户单位名称、客户编号字段拖放在组页眉。
按图将订单号、订货日期、产品代号、产品品牌、销售额字段拖放在主体节。在组页脚中添加2个文本框,左侧的文本框附加标签标题为:订单数,文本框中的公式为:=count(订单号);右侧的文本框附加标签标题为:总额,文本框中的公式为:=sum(销售额)
添加适当的直线控件以起分隔作用。
组页脚属性中设置强制分页为:节后。
以“按客户统计报表”为名保存。
题目
1.建立“数量汇总查询”,按产品品牌对数量求和。
2.建立“销售额更新查询”,更新(计算)订单表中的销售额,要求产品代号为“J”开头的销售额按“单价×90%×数量”计算,其余按“销售额=单价×数量”计算。
3.建立“最高销售额查询”,显示出销售额最高的值。
4.建立“生成订货销售表”的生成表查询,生成名为“订货单位销售新表”,只要3个字段:客户编号、客户单位名称、销售额之总计。
5.建立“追加业务员查询”的追加查询,将员工表中职务为业务员的记录追加到“员工表备用结构”中(此表是在第二单元中的第7小题复制得到的)。
6.建立“删除员工查询”的删除查询,将员工表备用结构中姓名为李四的员工记录删除。7.建立“SQL7”查询,用SQL语句查询出订单表中业务员编号为A02的订货日期、订单号、业务员编号、销售额字段,并按销售额降序排序。
8.建立“SQL8”查询,检索2014年5月以后(包含2014年5月)的订货日期、订单号、产品代号、产品品牌、姓名、订货单位代号字段。
答案要领
1.以设计视图建立查询,击∑按钮添加总计行。按产品品牌字段分组,对数量字段总计。2.必须在查询菜单中选择查询类型为“更新查询”,在“更新到”行中,用IIF函数建立表达式。3.对销售额字段求最大值。
4.选择“三表综合查询”为数据源,查询类型为“生成表查询”,生成新表名为:订货单位销售新表。建立查询后一定要运行一次。
5.查询类型为“追加查询”,必须运行一次。
6.查询类型为“删除查询”,必须运行一次。
7.打开查询的设计视图,不选择任何数据源,直接切换到SQL视图,输入SQL语句。8.打开查询的设计视图,不选择任何数据源,直接切换到SQL视图,输入SQL语句,注意这是多表查询。
答案:
1、打开“销售管理系统”数据库,以设计视图建立查询,选择订单表为数据源,选择产品品牌、数量2个字段,击∑按钮添加总计行。在总计行中,产品品牌字段选择分组,数量字段选择总计。
2、打开查询的设计视图,选择订单表为数据源,选择销售额字段,在“查询”菜单中选择查询类型为“更新查询”,在“更新到”行输入:iif([产品代号] Like "J*",[单价]*.9*[数量],[单价]*[数量])
以“销售额更新查询”为名保存并运行。
3、打开查询的设计视图,选择订单表为数据源,选择销售额字段,击∑按钮添加总计行。在总计行中选择最大值。
以“最高销售额查询”为名保存。
4、打开查询的设计视图,选择“三表综合查询”为数据源,选择客户编号、客户单位名称、销售额字段,在“查询”菜单中选择“生成表查询”,在弹出的对话框中输入新表名:订货单位销售新表。击∑按钮添加总计行,在总计行中,客户编号、客户单位名称选择分组,销售额选择总计。
以“生成订货销售表”为名保存并运行。
5、打开查询的设计视图,选择员工表为数据源,选择所有字段,在职务的条件行中输入:业务员。在“查询”菜单中选择“追加查询”,在弹出的对话框中选择“员工表备用结构”。
以“追加业务员查询”为名保存并运行。
6、打开查询的设计视图,选择“员工表备用结构”为数据源,选择姓名字段,在条件行中输入:李四。在“查询”菜单中选择“删除查询”。
以“删除员工查询”为名保存并运行。
7、打开查询的设计视图,不选择任何数据源,直接切换到SQL视图,输入语句:SELECT 订货日期, 订单号, 业务员编号,销售额
FROM 订单表
WHERE 业务员编号="A02"
ORDER BY 销售额desc;
8、打开查询的设计视图,不选择任何数据源,直接切换到SQL视图,输入语句:SELECT 订货日期,订单号,产品代号,产品品牌,姓名,订货单位代号
FROM 订单表, 员工表
WHERE 员工表.员工号=订单表.业务员编号and 订货日期>=#2014-5-1#;