引等数据库文件的物理存储结构。
4.2任务
4.2.1数据存取方面
由于经常需要判断是否有空余车位,所以要经常查询停车信息,因此在Stop表的Cwno上建立聚簇索引以提高查询效率。
为了方便查询各个车辆的收费记录,在Moneynote表的Carno上建立聚簇索引以提高查询效率
4.2.2功能模块图
(1)车位信息查询及更新模块图:
图10.车位信息查询及更新模块图
(2)停车信息查询及更新模块图:
图11.停车信息查询及更新模块图
(3)收费费率查询及更新模块图:
图12.收费费率查询及更新模块图
4.3结果 4.3.1 存储过程
表5-1 存储过程
编号 P-1 P-2 P-3 P-4 P-5 P-6 P-7 P-8 P-9 P-10 P-11 P-12 P-13 P-14 P-15
存储过程名称
Sof1 Sof2 Sof3 Sof4 Sof5 Sof6 Sof7 Sof8 Sof9 Sof10 Sof11 Sof12 Sof13 Sof14 Sof15
定义 详见附录3-16 详见附录3-17 详见附录3-18 详见附录3-19 详见附录3-20 详见附录3-21 详见附录3-22 详见附录3-23 详见附录3-24 详见附录3-25 详见附录3-26 详见附录3-27 详见附录3-28 详见附录3-29 详见附录3-30
作用
查询固定车位总数 查询自由车位总数 查询空闲自由车位数目
查询车位总数
在Moneynote中查询任意车辆的收费
在Car中插入一元组 在Ffed中插入一元组 在Stop中插入一元组 在Moneynote中插入一元组
查询车辆Car信息 查询车位Ffed信息 查询停车Stop信息 查询收费Moneynote信息 删除一条收费Moneynote记录 修改固定车位车辆余额Carmon
4.3.2 触发器
表5-2 触发器
编号 T-1 P-2 P-3
存储过程名称 Insert_or_update_carmon
tri_moneypay tri_del_mo
定义 详见附录3-31 详见附录3-32 详见附录3-33
作用
限定余额值必须大于等于120的触发器 限制修改MONEYNOTE中大于50的触发器 限制删除moneynote表中大于70的数据
5. 数据库实施阶段
5.1目标
数据库实施阶段就是用DBMS提供的数据定义语言与其他实用程序将数据库逻辑设计和物理设计结果严格描述出来,成为DBMS可以接受的源代码,再经过调试产生目标模式,然后组织数据入库。数据库实施阶段包括两项重要的工作,一项是数据的载入,另一项是应用程序的编码和调试。
5.2任务与结果 5.2.1建立数据库
(1) 建立数据库、数据表、视图、索引等
(a)建立数据库定义语句
create database Parking;
(b)建立数据表定义语句 建立车辆数据表:
create table Car
(Carno char(10) primary key,
Carsb char(10),
Carcolor char(4) );
建立车位信息表: create table Ffed
(Cwno char(10) primary key, Cwpace char(10) not null, Cwtype char(4) not null, Carno char(10), Carname char(10),
Carsb char(10), Carcolor char(4), Carpho bit,
Caradd char(20), Cartel char(20),
Carmon float check(Carmon>=100 and Carmon<=200)
);
建立停车信息表:
create table Stop (Cwno char(10) not null, Carno char(10) not null, Carat bit not null, Carin datetime, Carout datetime, Timetype char(6),
foreign key(Cwno) references Ffed(Cwno), foreign key(Carno) references Car(Carno) );
建立收费费率表:
create table Moneyt
(Timetype char(6) primary key,
Montime float not null check(Montime=1 or Montime=2 or Montime=1.5), );
建立收费记录表:
create table Moneynote (Cwno char(10), Carno char(10),
Cartime float not null,
Moneypay float check(Moneypay>0), Piece char(10),
foreign key(Cwno) references Ffed(Cwno), foreign key(Carno) references Car(Carno) );
(2) 数据入库
系统包括共有5张基本表,因此事先在Excel中录入数据,然后使用SQL Server 2000数据导入/导出向导功能,直接将数据导入到相应的基本表中。
6. 数据库调试与测试
对收费停车场管理系统的具体功能进行测试,测试包括: (1)测试各视图的功能,测试结果
相关推荐: