【Java_项目篇<2>】--JAVA-Oracle课程设计总结
2017-01-04 15:07
786 查看
2016.12.20-2016.12.28
九天时间,每天沉迷于学习不能自拔,大部分时间在机房和图书馆,最后那几天感觉自己的老腰都已经不堪重负,如果课设再继续下去,身体就要扛不住了,庆幸,提前两天完成课设,第二个答辩。最开始的三天(星期二、三、四),摸不着头脑,根本不知道怎么做,处于晕头转向的时期,不知道怎样把数据库、Java连接起来,不会的只能百度,老师只是给了代码让你看。自己去研究真的很费时间。星期二的时候想把Oracle课本上的一个案例连接到数据库,发现自己并不知道怎么把数据库与Java连接,星期三的早上问了下老师,终于解决了这个问题,连接上了Oracle并且打开了软件。
星期三的时候打算读懂这个人事管理系统的代码,然后修改一下参数和界面,这样偷个懒就可以把课程设计做出来了,后来在图书馆看了一下午,发现代码用到了很多知识点自己根本不会,相当于有很多的坑,每一个坑都需要自己研究后再去操作,两个星期完全不够用,而且代码用到了Hibernate.xml文件,更加无法利用这个现成的软件偷懒。这个时候,周舟开始做E-R图,并且在晚上的时候已经把E-R图做好了。
星期四开始写利用SQL-Developer 建表,迅速学会使用SQL-Developer的各种技巧 方法 了解主键、外键、唯一性约束。晚上的时候,救星来了,张桂宾的课设做完了,看了一下他们的代码,秒懂连接数据库,到此,最大的问题解决了,知道怎么将数据库与Java互联,在课设的过程中提供了巨大的帮助。
星期五、双休日 继续研究,数据库的部分关系基本上已经结束,但是触发器部分仍然有不懂的地方,打算星期一的时候问老师。(总觉得计划一天能完成的事情,每次都要花掉好多天才能完成)
星期一 问了老师,终于可以把数据库完成了。
星期二 完善了数据库部分细节,使数据库中的表连接到JTable中,下午开始撸Java界面,发现了windowBuilder这个好插件,实现可视化编程。研究了一个下午,终于知道如何使用,但是用起来开多了的话会卡! 晚上正式开始撸,撸到了凌晨两点多,终于把功能都实现了,只剩下UI界面和美化了。
星期三 因为明天就要答辩了,所以今天一定要完成,把粗鲁的已经实现的功能给老师看了一下,老师让我完善一个历史顾客记录表。OK ,Just do it!于是晚上学了下PS,优化一下界面,顺便做了一个Oracle知识点的提示界面,方便组员通过答辩。
附上三个触发器两个过程Oracle代码
1、订房存储过程 create or replace procedure order_customer( SNUM in A_01CUSTOMER.SNUM%type, SNAME in A_01CUSTOMER.SNAME%type, SPHONE in A_01CUSTOMER.SPHONE%type, NROOMNUM in A_06ORDERROOM.ROOMNUM%type, ROOMTYPE in A_06ORDERROOM.ROOMTYPE%type, ordertime in A_06orderroom.ordertime%type ) is begin insert into a_10orderrecord values(snum,sname,nroomnum, ordertime,'未退房'); insert into A_01CUSTOMER values(SNUM,SNAME,SPHONE); insert into A_06ORDERROOM values(SNUM,SNAME,SPHONE,NROOMNUM,ROOMTYPE, ordertime); update a_04roominfo set roomsit='满' where roomnum=NROOMNUM; commit; end order_customer; 2、退房存储过程 create or replace procedure delete_record( v_snum in A_01CUSTOMER.SNUM%type, v_quittime in a_10orderrecord.quittime%type )is begin delete from a_01customer where snum=v_snum; update a_10orderrecord set quittime=v_quittime where snum=v_snum; commit; end delete_record; 2、换房触发器 create or replace trigger tri_changeroomsit after delete on a_06orderroom for each row declare v_roomnum a_06orderroom.roomnum%type; begin select :old.roomnum into v_roomnum from dual; update a_04roominfo set roomsit='空' where roomnum=v_roomnum; end; 4、换房触发器 create or replace trigger tri_changeroomsit_man after insert on a_06orderroom for each row declare v_roomnum a_06orderroom.roomnum%type; begin select :new.roomnum into v_roomnum from dual; update a_04roominfo set roomsit='满' where roomnum=v_roomnum; end; 5、换房触发器 create or replace trigger tri_changeend after insert on a_07changeroom for each row declare v_newroomnum a_07changeroom.newroomnum%type; v_oldroomnum a_07changeroom.roomnum%type; v_snum a_07changeroom.snum%type; v_roomtype varchar2(30); begin select :new.newroomnum into v_newroomnum from dual; select :new.roomnum into v_oldroomnum from dual; select :new.snum into v_snum from dual; select (select roomtype from a_04roominfo where roomnum=:new.newroomnum) into v_roomtype from dual; update a_04roominfo set roomsit='空' where roomnum=v_oldroomnum; update a_04roominfo set roomsit='满' where roomnum=v_newroomnum; update a_06orderroom set roomnum=v_newroomnum where snum=v_snum; update a_06orderroom set roomtype=v_roomtype where snum=v_snum; update a_10orderrecord set roomnum=v_newroomnum where snum=v_snum; end;
附上Java 源文件下载地址
相关文章推荐
- oracle job的创建、修改、删除、运行
- Oracle优化08-并行执行
- ORACLE 常用查询
- Oracle Data Guard的配置
- 使用Navicat For Oracle连接Oracle数据库
- 查看oracle数据库允许的最大连接数和当前连接数
- 关于oracle number类型超过16位的显示问题
- ORACLE范式
- centos6下pip安装cx_oracle
- Oracle字符集的查看查询和Oracle字符集的设置修改
- oracle v$database视图的各种值的含义
- oracle add_months函数
- Does Block Recovery use Incremental Backups?? (文档 ID 727706.1)
- oracle 存储过程中 动态游标
- oracle正确卸载步骤
- ORACLE 10.2.01升级10.2.05 for windows 详细文档
- oracle知识点实验,技术文章结构规划
- 修改ORACLE密码过期问题
- Oracle中转义字符的详细介绍
- Hibernate+Oracle注解式完整实例