1、 图 6 乘客信息表 各实体间关系的e-r图如下: 车票车票编号售票情况 票价 线路出发地目的地出发时间所需时间线路编号 汽车汽车种类汽车编号最大载客量乘客售票行驶供应乘车 1 n 1 1 n 1 图7 E-R图 (2)逻辑设计 由E-R图转换成关系模式: 数据库中包含4个表,汽车基本信息表、线路信息表、车票信息表和乘客信息表。汽车基本信息表(汽车编号,汽车种类,最大载客量,线路号) 线路信息表(线路号,出发地,目的地,出发时间,所需时间 ) 车票信息表(车票编号,售票情况,票价)乘客信息表(出发时间,出发地,目的地 ) (3)物理设计逻辑设计相对应的表格 表1 线路信息表属性名数据类型宽度说
2、明线路号char10主码int 表2 汽车基本信息表列名汽车编号 表3 车票信息表票价 表4 乘客信息表 属性名创建索引 在汽车基本信息表为汽车票号建立唯一索引。在线路信息表为线路号建立唯一索引。在车票信息表为车票编号建立唯一索引。在乘客信息表为出发时间建立唯一索引。建立视图 为汽车基本信息表创建视图。为线路信息表创建视图。为车票信息表创建视图。为乘客信息表创建视图。4、给出系统开发运行环境 (1)硬件 处理器 英特尔 第二代酷睿 i3-2365M 1.40GHz 双核 主硬盘 希捷 ST500LM012 HN-M500MBB ( 500 GB / 5400 转/分 ) 显示器 京东方 BOE
3、05C2 ( 14 英寸 ) (2)软件 Microsoft SQL Server 2005 5、创建各类数据库对象 (1)数据库 CREATE DATABASE changtuqiche ON (NAME=changtuqiche_data, FILENAME=c:logchangtuqiche_data.mdf, SIZE=10MB, MAXSIZE=300MB, FILEGROWTH=10%) LOG ON (NAME=changtuqiche_log,logchangtuqiche_data.ldf SIZE=5MB, MAXSIZE=200MB, FILEGROWTH=2MB) 图8
4、 创建数据库 (2)表 CREATE TABLE 汽车基本信息表 ( 汽车编号 CHAR(10) PRIMARY KEY, 汽车种类 CHAR(10), 最大载客量 INT, 线路号 CHAR(10) 图9 创建汽车基本信息表 CREATE TABLE 车票信息表 ( 车票编号 CHAR(10) PRIMARY KEY, 售票情况 CHAR(10), 票价 INT, 图10 创建车票信息表 CREATE TABLE线路信息表 (线路号 CHAR(10) PRIMARY KEY, 出发地 CHAR(10), 目的地 CHAR(10), 出发时间 CHAR(10), 所需时间 INT) 图11 创
5、建线路信息表 CREATE TABLE 乘客信息表 线路号 CHAR(10), 出发时间 CHAR(10) 图12 创建乘客信息表 (3)索引CREATE UNIQUE INDEX im_in ON 汽车基本信息表(汽车编号) 图13 为汽车基本信息表创建索引 CREATE UNIQUE INDEX ik_il ON 线路信息表(线路号) 图14 为线路信息表创建索引 CREATE UNIQUE INDEX id_ix ON 车票信息表(车票编号) 图15 为车票信息表创建索引 CREATE UNIQUE INDEX ih_ig ON 乘客信息表(汽车编号) 图16 为乘客信息表创建索引 (4
6、)视图CREATE VIEW view_1 AS select 汽车编号,汽车种类,最大载客量,线路号 from 汽车基本信息表 图17 为汽车基本信息表创建视图 CREATE VIEW view_2 select 线路号,出发地,目的地,出发时间,所需时间 from 线路信息表 图18 为线路信息表创建视图CREATE VIEW view_3 select 车票编号,售票情况,票价,线路号 from 车票信息表 图19 为车票信息表创建视图 CREATE VIEW view_4 select 出发时间,出发地,目的地,汽车编号,线路号 from 乘客信息表 图20 为乘客信息表创建视图6、录
7、入数据 INSERT INTO 车票信息表 VALUES(20110001,拥挤85101) VALUES (20110002良好9010220110003稀疏110103201100041091042011000512010520110006160106 INTO 汽车基本信息表 1A352B503C454D555E6F60 INTO 线路信息表 南昌市抚州市18:00景德镇鄱阳县10:2015:4014:3013:09: INTO 乘客信息表 0907:23287、设计存储过程和触发器 (1)创建存储过程 create proc proc_zg as select 车票编号,票价 wher
8、e 线路号= 图21 创建存储过程 (2)创建触发器 create trigger insert_qi on 车票信息表 after insert as select * insert into 车票信息表(车票编号,票价) Values(20110001,80) 图22 车票信息表创建触发器 create trigger insert_che on 汽车基本信息表 insert into 汽车基本信息表(汽车编号,线路号)Values(1,101) 图 23 汽车基本信息表建触发器 create trigger insert_xian on 线路信息表 insert into 线路信息表(线
9、路号,所需时间)Values(106,5) 图 24 线路信息表建触发器 create trigger insert_cheng on 乘客信息表 insert into 线路信息表(出发时间,线路号) Values(23,102) 图25 乘客信息表建触发器8.课程设计总结 通过这次的课程设计实验,我发现自己对数据库课程的兴趣有了很大提高,而且对课本的知识更加的了解并有了一定的掌握,通过实验我懂得了如何创建索引、视图、存储过程以及触发器。几天的数据库课程设计很快就结束了,在这短暂的几天的的时间里,发现自己学会了很多课外的东西,特别是和同学们一起讨论分析,以及复习了我们所学过的相关数据库知识,
10、进一步了解了数据库的实践应用过程,增强了课外的动手实践能力。9.参考文献 1宋振会.SQL Server 2000中文版基础教程M.北京:清华大学出版社.2005.5 2求是科技 SQL Server 2000数据库管理与开发大全M.人民邮电出版社.2004.12 3(美)西尔伯沙茨.数据库系统概念M.机械工业出版社.2012.5 4徐孝凯,贺桂英.数据库基础与SQL Server应用开发M.北京:清华大学出版社.2008.4 5 成先海.数据库基础与应用-SQL Sever 2000M.北京:机械工业出版社,2008.3 6周山夫,黄京莲.数据库应用程序设计 M. 北京:清华大学出版社,2004.9 7孙瑜.数据库系统基础 M. 北京:人民邮电出版社,2008.10
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1