《2022年网吧计费系统数据库设计 .pdf》由会员分享,可在线阅读,更多相关《2022年网吧计费系统数据库设计 .pdf(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、网吧计费系统设计文档1、oracle数据库设计cards表中文名称名称类型主外键约束卡号id int PK 用户姓名name varchar2(20)密码password varchar2(20)帐号余额balance int 状态(是否在用)isUse int- 创建 cards表- create table cards( id int not null, -卡号 - name varchar2(20) not null, -用户姓名 - password varchar2(20) not null, -密码 - balance int not null, -帐号余额 - isUse int
2、 not null -状态 ( 是否在用 )- ) - 为 cards表创建主键 - alter table cards add constraint PK_tb_cards primary key(id)- 为 cards表中的 isUse设置默认值为1- alter table cards modify isUse default(1); - 为 cards表创建序列 - create sequence ca_seq start with 11111 -设置序列的初始值为11111- increment by 1 -每次增长1- maxvalue 1000000000 -设置序列的最大值为
3、1000000000- minvalue 11111 -设置序列的最小值为11111- - 为 cards表创建触发器,让主键id 自动增长 - create or replace trigger ca_tri before insert on cards -触发条件:当向表执行插入操作时触发此触发器- for each row -对每一行都检测是否触发- begin -触发器开始 - select ca_seq.nextval into:new.id from dual; -触发器主题内容,即触发后执行的动作,在此是取得序列dectuser_tb_seq的下一个值插入到表中的id字段中 -
4、end; Computers 表中文名称名称类型主外键约束电脑编号id int PK 状态(是否在用)onUse int 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 4 页 - - - - - - - - - 备注note varchar2(20) - 创建 Computer表- create table computers( id int not null, -电脑编号 - onUse int not null, -状态 ( 是否在用 )- note varchar
5、2(20) not null -备注 - ) - 为 tb_computer表创建主键 - alter table computers add constraint PK_tb_computers primary key(id)- 为 computers表中的 isUse设置默认值为1- alter table computers modify onUse default(1); -为 computers 表创建序列 - create sequence co_seq start with 1 -设置序列的初始值为1- increment by 1 -每次增长1- maxvalue 10000
6、-设置序列的最大值为10000- minvalue 1 -设置序列的最小值为1- -为 computers 表创建触发器,让主键id 自动增长 - create or replace trigger co_tri before insert on computers -触发条件:当向表执行插入操作时触发此触发器- for each row -对每一行都检测是否触发- begin -触发器开始 - select co_seq.nextval into:new.id from dual; -触发器主题内容,即触发后执行的动作,在此是取得序列dectuser_tb_seq 的下一个值插入到表中的id
7、 字段中 - end; Records 表中文名称名称类型主外键约束记录编号id int PK 用户卡号caId int FK 电脑编号coId int FK 上机时间beginTime date 下机时间endTime date 费用fee int - 创建 Records表- create table records( id int not null, -记录编号 - cardId int not null, -用户卡号 - computerId int not null, -电脑编号 - beginTime date not null, -上机时间 - endTime date not
8、null, -下机时间 - 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 4 页 - - - - - - - - - fee int not null -费用 - ) - 为 records表创建主键 - alter table records add constraint PK_tb_records primary key(id)- 为 tb_record表创建外键 - alter table records add constraint FK_caIds forei
9、gn key (cardId) references cards (id) alter table records add constraint FK_coIds foreign key (computerId) references computers (id) -为 records 表创建序列 - create sequence re_seq start with 1 -设置序列的初始值- increment by 1 -每次增长1- maxvalue 10000 -设置序列的最大值为10000- minvalue 1 -设置序列的最小值为1- -为 records 表创建触发器,让主键i
10、d 自动增长 - create or replace trigger re_tri before insert on records -触发条件:当向表执行插入操作时触发此触发器- for each row -对每一行都检测是否触发- begin -触发器开始 - select re_seq.nextval into:new.id from dual; -触发器主题内容,即触发后执行的动作,在此是取得序列dectuser_tb_seq 的下一个值插入到表中的id 字段中 - end; 二、向所设计的表插入一些数据-为 cards 表插入数据 - insert into cards(name,p
11、assword,balance) values( 古天乐 ,123456,300) insert into cards(name,password,balance) values( 佘诗曼 ,234567,500) insert into cards(name,password,balance) values( 林峰 ,345678,600) insert into cards(name,password,balance,isUse) values( 吴卓羲 ,456789,400,0) insert into cards(name,password,balance) values( 杨千嬅
12、,112233,800) -为 computers 表插入数据 - insert into computers(note)values( 此电脑可以使用) insert into computers(note)values( 此电脑可以使用) insert into computers(onUse,note)values(0,此电脑不可以使用) insert into computers(note)values( 此电脑可以使用) insert into computers(note)values( 此电脑可以使用)-为 records表插入数据 - insert into tb_record
13、(reId,caId,coId,beginTime,endtime,fee)values(1,11111,1,to_date (2011-10-9 10:30:00,yyyy-mm-dd HH24:MI:SS),to_date(2011-10-9 11:30:00,yyyy-mm-dd HH24:MI:SS),100) 三、用 Java 编写数据库的连接(DBUtil.java )名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 4 页 - - - - - - - - - 四、用 Java 分别编写三个DAO:CardsDAO.java 、ComputerDAO.java 、RecordDAO.java (增删查改这四个方法) 。五、整合相关代码六、调试程序,看是否有错。七、无错、按要求能正常运行即完成。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 4 页 - - - - - - - - -