停车场数据库管理系统姓名:学号:专业:1.需求分析背景现在随着社会的发展,车为了人们出行的必备工具,因为它快捷方便,但在行程中快捷方便的同时,到哪停车成为了人们头疼的事。
停车场因此存在了,但有的停车场比较大,车位比较多,管理起来较麻烦,这就需要有计算机的辅助。
同时随着计算机的发展,计算机数据库可以很好的帮助人们去管理,管理员的工作变的更加简单程序化,且失误减少,效率变高,停车会更加方便。
停车场数据库实现的功能1.输入及添加停车位、停车位资料,每个停车位信息包括:停车位编号、停车位地址、停车位类别编号、登记日期、是否被占用。
停车证信息包括:客户停车证编号、客户姓名、客户性别、客户种类、登记时间。
2.对已存入的停车位、停车证信息进行插入添加。
3.对已存入的信息进行修改。
4.利用停车证对停车进行租借和退还停车位。
5.利用租借停车位时间向客户收费。
关系模式2.方案图表设计E-R图根据所要实现的功能设计,可能建立它们之间的关系,进而实现逻辑结构功能。
图书管理信息系统可以划分为:停车位类别信息、客户信息实体、停车位信息、租借记录信息,退还记录信息。
用E-R图一一描述这些实体。
2.1.1类别E-R图:图2-1类别E-R图客户信息E-R图:图2-2 客户信息E-R图2.1.3信息实体E-R图:图2-3停车位信息E-R图2.1.4.记录信息E-R图:图2-4 记录信息E-R图2.1.5记录信息E-R图:图2-5记录信息E-R图付款信息E-R图:图2-6付款信息E-R图2.1.6总的信息实体E-R图:图2-7总的信息E-R图建立表格表2-6 customer_fee 付款记录信息表3.数据库语言设计数据库的建立3.1.1创建数据库停车位类别表建立create table parking_style(parkingstyleno varchar(30) primary key, parkingstyle varchar(30))3.1.3创建停车位信息表create table system_parking(parkingid varchar(20) primary key,parkingaddress varchar(30) Not null,parkingstyleno varchar(30) Not null,parkingindate datetime ,isborrowed varchar (2) ,)停车证表建立create table system_customers (customerid varchar(9)primary key,customername varchar(9)not null ,customersex varchar(2) not null,customertype varchar(10),regdate datetime)租借记录表建立create table borrow_record( parkingid varchar(20) primary key,customerid varchar(9),borrowdate datetime,)退还记录表建立create table return_record( parkingid varchar(20) primary key,customerid varchar(9),returndate datetime,)付款单表建立create table customer_fee(customerid varchar(9)not null,customername varchar(9)not null ,parkingid varchar(20) primary key,parkingaddress varchar(30) Not null,parkingfee varchar(30) ,borrowdate datetime,)数据初始化3.2.1将停车位类别加入表parking_style中insert into parking_style(parkingstyleno,parkingstyle)values('1','小型商务车') insert into parking_style(parkingstyleno,parkingstyle)values('2','中等型轿车') insert into parking_style(parkingstyleno,parkingstyle)values('3','大型客车')3.2.2将已有的停车位加入system_parking表中insert into system_parking (parkingid , parkingadress, parkingstyleno,parkingindate, isborrowed )values('1234','A区34位','1', '2009-01-03','2011-11-15','1');insert into system_parking (parkingid , parkingadress, parkingstyleno,parkingindate, isborrowed )values(1235',' A区35位','1', '2009-01-03','2011-11-16','1');nsert into system_parking (parkingid , parkingadress, parkingstyleno,parkingindate, isborrowed )values('1236',' A区36位','1', '2009-01-03','2011-11-15','1');3.2.3将客户信息加入system_customers表中insert into system_customers(customerid, customername, customersex, customertype,regdate)values('50080','张三','男','常住','2009-08-26 14:23:56')insert into system_customers(customerid, customername, customersex, customertype,regdate)values('50081','李四','男','临时','2009-08-27 13:24:')insert into system_customers(customerid, customername, customersex, customertype,regdate)values('50082','王二麻','男','常住','2009-08-28 11:24:')3.2.4添加租借客户的记录insert into borrow_record(parkingid, customerid,borrowdate)values('1234','50080','2011-11-15 11:24:')insert into borrow_record(parkingid, customerid,borrowdate)values('1235','50081','2011-11-16 08:26:')insert into borrow_record(parkingid, customerid,borrowdate)values('1236','50082','2011-11-15 08:26:')4.进行总体设计将上述做好的表格进行联系,建立关系,在access2007上用软件创建联系,如下图:5.课程设计心得这是我第一次接触数据库软件进行数据库设计,上课时有很多地方听的不是很明白,但上完老师的课程,感觉自己还是很有收获的。
通过对这数据库的设计,我对数据库的设计流程进行了深一步的了解,知道了数据库设计到底如何进行,并开始简单的学习了一下数据库设计的软件,像SQLSeveral2008和access2007,虽然不是很熟练,但已经可以进行简单的处理了。
使用这些软件的过程中我感到,熟悉这些工具软件,对于编写数据库来说是很重要的,熟练的运用软件可以提高工作的效率。
在编写数据库语言的时候,有些小的地方非常需要注意,一个标点的错误都会让编好的程序运行不了,就生成不了表格,所以编程时要养成良好的习惯,多多注意,仔细点才行。
尽量减少出现错误,这样才不至于花大量的时间去检查错误。
在数据库的设计过程中出现了很多问题,由于自己能力有限,无法单独完成,询问了班级里会做的同学求指点,在同学难心的知道下,经过修修改改几回才将这个数据库设计完成。
第一次设计难免会出现很多问题,碰到很多挫折,但每一次的艰难都是在为自己积累经验,善于总结,也是学习能力的一种体现,每次的总结,总能找到自己的不足,这样才能对数据库的设计了解更深,才能逐步提高,生活就是这样,汗水预示着结果也见证着收获。
自己先前感觉数据库设计好难,自己不会做,自己就吓到了自己,通过实际亲手动手做,我感觉到不要被自己打倒,困难其实是被自己夸大了而已。
对我而言,知识上的收获重要,精神上的丰收是可喜的。
挫折是一份财富,经历是一份拥有。
这次实际操作必将成为我人生旅途上一个非常美好的回忆!想起这一个星期的数据库设计,收获很多,从开始想数据库对象到完成数据库设计,从理论到实践,在这几天里,学到了很多很多的东西,不亲手自己动手做就不知道书本上的东西到底如何应用。
理论与实际相结合才会有意义,而且现在大学生的动手能力和实践能力都比较差,提高自己的实际动手能力和独立思考的能力确实是我们应当加强的地方。
对老师的建议:这学期开了这个课,让我感觉就是太突然了,短短的几个星期里就要从不会数据库软件到设计数据库,跨度太大,而且课程又少,平时又有很多专业课的学习,再加上活动也不少,很难在很短的时间里学精,上课时感觉自己连软件都不会,就不认真听了,上课听的模棱两可的,我就是建议能在前一学期就通知各班同学,告知下一学期会上这门课,要求同学在暑假就自学数据库,暑期很长完全可以自学。