资源描述
无锡市审计局计算机审计中级培训
模拟测试(二)
——网络、数据库、Access、VB
一、 网络(15分)
1、试为自己的考试主机配置IP地址、掩码、默认网关、DNS等要素。所有考试主机都在110.20.0.0网络上,并被划分为33个子网。现假定都考生都属于20或21号机房(男生在21号子网,女生在20号子网),请用这个子网的第一个网址配置考生的机器。(7分)
注:默认网关地址为: 110.20.0.1
DNS地址为: 110.20.22.1
备用DNS地址为: 112.108.22.2
2、制作一根路由器和HUB相连的网线。(8分)
二、数据库(80分)
在C盘根目录下新建一个目录,取名“模拟3+自己的名字”。
I、(6分)用企业管理器建立满足如下要求的数据库:
(1)数据库名字为:Plane;
(2)此数据库包含两个数据文件,其中主数据文件的逻辑文件名为:Data1,物理文件名为Data1_data.mdf,初始大小为3MB,存放在新建目录下,增长方式为自动增长,每次增加1MB,最多增长到10MB。辅助数据文件的逻辑文件名为:Data2,物理文件名为Data2_data.ndf,初始大小为2MB,同主数据文件存放在相同的位置,不自动增长。
(3)日志文件的逻辑文件名为:log1,物理文件名为log1_log.ldf,初始大小为2MB,同主数据文件存放在相同的位置,增长方式为自动增长,每次增加15%。
II、(10分)为描述乘客乘坐飞机航班的情况,定义三张表:航班表、乘客表、售票表,以系统管理员的身份在“Plane”数据库中定义这三张表。航班表用于描述航班的基本信息,乘客表用于描述乘客的基本信息,售票表描述了每个航班的售票情况。(请将语句以文件形式保存下来,文件名为“考生名.sql”,存放在新建的目录下。可以将下述所有的SQL语句均保存在此文件中,在文件中要注明题号),三张表的结构为:
注:括号中为表名和列名的拼音表示,建表时用拼音表示表名和列名即可。:
1.航班表(HBB):
航班号(hbh):普通编码定长字符型,6位长,主码,以CZ、CA、FM开头
始发地(sfd):普通编码定长字符型,5个汉字长,非空
目的地(mdd):普通编码定长字符型,5个汉字长,非空
原价(YJ):整型,非空,大于200
2. 乘客表(CKB):
身份证号(sfzh):普通编码定长字符型,18位长,主码
姓名(xm):普通编码可变字符型,10位长
性别(xb):统一编码定长字符型,1个汉字,取值“男”或“女”,默认值为“男”
电子邮件(dzyj):普通编码定长字符类型,长度为19,取值形式为:6位字母数字(前四位必须为字母,后两位必须为数字)+‘@’
3. 售票表(SPB):
航班号(hbh):普通编码定长字符型,6位长,主码
身份证号(sfzh):普通编码定长字符型,18位长,主码
起飞日期(qfrq):小日期时间型,非空
售票日期(sprq):小日期时间型,非空,售票时间早于起飞时间,默认值为当前时间
实价(sj):整型,非空
其中:航班号为引用航班表的外码,身份证号为引用乘客表的外码。
III、(7分)在SQL Server中创建SProle数据库角色,并建立sp1、sp2、sp3三个数据库用户,将这三个用户加入SProle角色,授予这三个角色对“Plane”数据库的访问权。sp1帐号对航班表无查询权,sp2、sp3帐号具有对“Plane”中的所有表具有查询权。请用最优的方法实现。
IV、(6分)利用SQL Server的DTS工具,将桌面上的“上机考试数据”文件夹中的“航班表.txt”,“乘客表.txt”和“售票表.xsl”文件中的数据分别导入到前述三张表中。
V、(29分)利用第二题的三张表,写出实现如下要求的SQL语句,并将所写的SQL语句保存到前述文件中。(每一小题只能使用一条SQL语句)
1. 查询出王曼没有乘坐过的航班情况。
2. 查询出王曼和张飞没乘过的CA代码开头的航班号。
3. 求2002年1月到6月,各航空公司的总售票数。列出航空公司名称和总售票数。
其中:航班号前两位代表航空公司代码,“CZ”代表“中国国际航空公司”,“CA”代表“中国南方航空公司”,“FM”代表“上海航空公司”。
4. 查询原价低于所有航班平均原价的航班号,始发地,目的地,原价,实价。
5. 查询年龄在30-40之间(含)的乘客2002年乘坐航班的记录。
列出姓名、性别、航班号和起飞日期。
其中,身份证号码第7位开始的4位数字表示出生年份。
6. 查询一天至少有2架以上航班起飞的日期,列出该日的所有航班信息,使查询结果以如下格式显示:
航班号 区间
CZ1209 从南京到昆明
……… ……………..
7. 从航班表中删除没有卖出过票的航班记录。
VI、(8分)更新航班表。
实际售价打6折及以下的,原价减300;
实际售价打6折至7折(含)的,原价减200;
实际售价打7折至8折(含)的,原价减100;
其余保持不变。(可用多条语句实现)
VII、(8分)游标题,编写语句实现如下格式查询结果:
【刘羽蕴】搭乘过的航班有:
从广州到南京的航班 2002/04/5
从北京到上海的航班 2001/12/20
***********************************
【孙艳阳】搭乘过的航班有:
从拉萨到广州的航班 2001/12/5
VIII、(6分)备份数据库。
1、建立永久备份设备“AK_P”,用此设备对“Plane”数据库进行一次完全备份和日志备份。2、导出数据库northwind中的customer表中的customerid,companyname,address、phone字段至xls中,xls保存为customer.xls。
三、Access(15分)
1. 在上题新建文件夹中创建一个Access数据库hb.mdb,然后将SQL考试题中的三个表导入到新建的数据库中。(3分)
2. 创建一个查询对象,统计提前一个月(含一个月)订票的航班的原价和实价的差额,要求列出乘客姓名,航班号,始发地,目的地,折扣额。(3分)
3. 创建一个生成表查询对象,按航空公司(航班号的前两位)统计2002年出票的数量和总金额,列出航空公司、出票的数量、金额,将查询的结果存放于新表ww 中。(4分)
4.按提前订票的时间分层产生统计各航班号提前订票的折扣总金额的报表。
四、Visual Basic(40分)
以自己名字新建一个目录,将解答存放在这个目录中
使用VB编写应用程序对SQL Server创建的“航班表(hbb)”数据进行操作,采用ADO对象实现。具体要求如下:
1、 第一个窗体是“航班明细”,实现“航班表”数据的添加、删除、浏览等操作。
(窗体如下图所示)
(1) 单击“添加”和“更新”按钮,实现记录的添加操作;要求用子函数进行唯一性判断,要求主码“航班号”能确定唯一一条记录并且不为空,如果输入不符合,使用消息框(MsgBox)提示用户输入出错要求用户重新输入,并设置焦点。
设置完成后,请添加如下三条记录“CA1302 北京 上海 1500”、“FM1105 北京 上海 1300”、“CZ1403 拉萨 广州 1400”
(2) 单击“删除”按钮,实现对当前记录的删除操作,并使用消息框(MsgBox函数)提示用户对删除记录操作的确认;
(3) 单击“取消”按钮,取消正在进行中的添加操作;
(4) 单击“第一条”、“上一条”、“下一条”和“末一条”按钮实现单条记录的浏览操作;
(5) 在“查找条件”文本框中输入查找条件后,单击“查找”按钮,实现查找操作(即在记录集中查找满足查找条件的记录),并在窗体中显示;如果查找失败,使用消息框(MsgBox函数)询问用户是否从第一条重新开始查找;
(6) 单击“查看”按钮,对当前记录所在始发地和目的地的航班数量进行统计,并算出始发地和目的地为当前记录的这些航班的平均票价,以及最便宜的票价及其航班号;结果在标签中显示。(如图)
(7) 单击“列表查看”按钮,进入第二个窗体——“列表查看”,实现航班表数据的全局记录浏览操作。
(8) 单击“结束程序”按钮,发出蜂鸣并结束整个应用程序的运行。
2、 第二个窗体是“列表查看”,实现“航班表”全局数据的浏览。(窗体如下图)
(1)使用DataGrid控件实现“航班表”全局数据的浏览;
(2)用组合框控件实现过滤条件的选择(包含“航班号”、“始发地”、“目的地”)
(3)单击“过滤”按钮,根据选择的下拉列表项和输入文本框中的过滤条件输入实现对记录集的筛选,如果没有符合条件的记录集,使用消息框(MsgBox)进行提示,并释放过滤;
(4)单击“释放过滤”按钮,释放过滤;
(5)单击“明细查看”按钮,返回到第一个窗体上;
(6)该窗体表格中浏览的全局数据与第一个窗体中数据记录的操作结果应该实现同步变化
5
展开阅读全文