圖書館管理系統(tǒng)《Oracle數(shù)據(jù)庫(kù)技術(shù)》綜合設(shè)計(jì)報(bào)告書
《圖書館管理系統(tǒng)《Oracle數(shù)據(jù)庫(kù)技術(shù)》綜合設(shè)計(jì)報(bào)告書》由會(huì)員分享,可在線閱讀,更多相關(guān)《圖書館管理系統(tǒng)《Oracle數(shù)據(jù)庫(kù)技術(shù)》綜合設(shè)計(jì)報(bào)告書(22頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、精選優(yōu)質(zhì)文檔-----傾情為你奉上 《Oracle數(shù)據(jù)庫(kù)技術(shù)》 Oracle綜合設(shè)計(jì)實(shí)驗(yàn)報(bào)告 選 題: 圖書管理信息系統(tǒng) 班 級(jí): 學(xué) 號(hào): 姓 名: 填寫日期: 2010 年 12月25日 一、 系統(tǒng)功能說明 隨著社會(huì)的發(fā)展,人們對(duì)知識(shí)的需求也不斷的增長(zhǎng)。在這種形式下,人們就要不斷的學(xué)習(xí),不斷的給自己充電,而圖書館就自然而然地在人們的生活中占據(jù)了一定的位置,如何科學(xué)的管理圖書館不但關(guān)系到讀者求知的方便程度,也關(guān)系到圖書館的發(fā)展。圖書館作為一種信息資源的集散地,用戶借閱資
2、料繁多,包含很多的信息數(shù)據(jù)的管理?,F(xiàn)今,有很多的圖書館都是初步開始使用,有些甚至尚未使用計(jì)算機(jī)進(jìn)行信息管理。數(shù)據(jù)信息處理工作量大,容易出錯(cuò);用于數(shù)據(jù)繁多,容易丟失,且不易查找??偟膩碚f,缺乏系統(tǒng),規(guī)范的信息管理手段。盡管有的圖書館有計(jì)算機(jī),但是尚未用于信息管理,沒有發(fā)揮它的效力,資源閑置比較突出。因此一個(gè)好的圖書館管理系統(tǒng)是非常重要的。 1.登錄模塊 用戶登錄:用戶在登陸頁(yè)面登陸,登陸成功進(jìn)入系統(tǒng)。 管理員登陸:用于管理員的登陸,在后臺(tái)登陸頁(yè)面登陸,登陸成功進(jìn)入系統(tǒng)。 圖書管理員與系統(tǒng)管理員后臺(tái)功能不一樣。查詢用戶表,對(duì)應(yīng)用戶名、密碼正確則進(jìn)入系統(tǒng),對(duì)應(yīng)用戶名密碼不正確則顯示相應(yīng)信息
3、 2.圖書管理模塊 對(duì)圖書進(jìn)行添加、查詢、修改、刪除、添加。 將輸入的圖書信息添加到數(shù)據(jù)庫(kù)圖書表中,以方便進(jìn)行各種查詢及更新操作,根據(jù)輸入的圖書名稱或作者,查詢數(shù)據(jù)庫(kù)圖書表中的相應(yīng)記錄并顯示相應(yīng)圖書信息,更新數(shù)據(jù)庫(kù)圖書表中對(duì)應(yīng)記錄并顯示更新后的圖書信息,刪除數(shù)據(jù)庫(kù)圖書表中對(duì)應(yīng)記錄。 3.副本信息模塊 對(duì)圖書的副本信息進(jìn)行添加、修改、刪除。 將輸入的圖書副本信息添加到副本表中,并分配一個(gè)獨(dú)立的中南碼根據(jù)輸入的中南碼或國(guó)際標(biāo)準(zhǔn)圖書編碼,查詢圖書副本表,顯示副本信息更新副本表的數(shù)據(jù)庫(kù)、刪除副本表中所對(duì)應(yīng)的圖書信息、修改副本表中錯(cuò)誤的信息并更新數(shù)據(jù)庫(kù)。 4. 用戶管理模塊 對(duì)用戶進(jìn)
4、行添加、刪除、修改。 將輸入的用戶信息添加到用戶表中,并分配一個(gè)獨(dú)立的用戶號(hào)根據(jù)輸入的用戶名的姓名或生日,查詢用戶表,顯示用戶信息更新用戶表的數(shù)據(jù)庫(kù)、刪除用戶表中所對(duì)應(yīng)的、修改用戶中錯(cuò)誤的信息并更新數(shù)據(jù)庫(kù)。 二、 數(shù)據(jù)庫(kù)分析與設(shè)計(jì): 2.1數(shù)據(jù)庫(kù)的概念設(shè)計(jì) 圖書管理信息系統(tǒng)E—R圖 2.2 數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì) 圖書(國(guó)際標(biāo)準(zhǔn)圖書編碼,書名,出版社名,作者名,作者號(hào),中南碼) 圖書副本(副本編號(hào),國(guó)際標(biāo)準(zhǔn)圖書編碼) 作者(作者號(hào),作者名) 分類目錄(中南碼,目錄名) 寫書(
5、國(guó)際標(biāo)準(zhǔn)圖書編碼,作者號(hào)) 出版社(出版社名,地址) 用戶(用戶編號(hào),用戶名,密碼,權(quán)限,生日,郵箱,聯(lián)系電話,籍貫) 2.3數(shù)據(jù)庫(kù)的物理設(shè)計(jì) 1.以表單的形式給出數(shù)據(jù)庫(kù)中的具體表的結(jié)構(gòu)以及字段的說明 表2-1 Books表 字段 數(shù)據(jù)類型 數(shù)據(jù)長(zhǎng)度 能否為空 中文名 備注 ISBN Char 20 否 國(guó)際標(biāo)準(zhǔn)圖書編碼 主碼 Title Char 30 是 書名 Pubname Char 30 是 出版者名 Author Char 30 是 作者名 A
6、uthorno Number 30 是 作者號(hào) ZNCode Number 30 是 中南分校碼 表2-2 Copies表 字段 數(shù)據(jù)類型 數(shù)據(jù)長(zhǎng)度 能否為空 中文名 備注 CopyNo Number 10 否 副本編號(hào) 主碼 ISBN Char 20 是 國(guó)際標(biāo)準(zhǔn)圖書編碼 表2-3 Authors表 字段 數(shù)據(jù)類型 數(shù)據(jù)長(zhǎng)度 能否為空 中文名 備注 AuthorNo Number 10 否 作者號(hào) 主碼 Aut
7、horName Char 20 是 作者名 表2-4 Categories表 字段 數(shù)據(jù)類型 數(shù)據(jù)長(zhǎng)度 能否為空 中文名 備注 ZNCode Number 20 否 中南分校碼 主碼 CateName Char 20 是 目錄名 表2-5 Writers表 字段 數(shù)據(jù)類型 數(shù)據(jù)長(zhǎng)度 能否為空 中文名 備注 ISBN Char 20 否 國(guó)際標(biāo)準(zhǔn)圖書編碼 主碼 AuthorNo Number 20 否 作者號(hào) 主碼 表2-6 Publishers表 字
8、段 數(shù)據(jù)類型 數(shù)據(jù)長(zhǎng)度 能否為空 中文名 備注 PubName Char 30 否 出版者名 主碼 Address Char 50 是 地址 表2-7 Users表 字段 數(shù)據(jù)類型 數(shù)據(jù)長(zhǎng)度 能否為空 中文名 備注 UsersNo Number 12 否 用戶編號(hào) 主碼 UserName Char 20 否 用戶名 UserPwd Char 20 否 用戶密碼 Quanxian Number 20 否 權(quán)限 Birthday Date 否 用戶生日 Email Char
9、 30 是 用戶的郵箱 Tel Char 20 是 用戶的聯(lián)系電話 Address Char 20 是 籍貫 2.數(shù)據(jù)庫(kù)的索引 (1)在Books表中的書名創(chuàng)建索引。 (2)為Users表中的姓名創(chuàng)建索引。 (3)為Copies表中的副本編號(hào)創(chuàng)建索引。 3.數(shù)據(jù)庫(kù)的視圖 (1)創(chuàng)建視圖“cx_books”,要求查看書籍的國(guó)際標(biāo)準(zhǔn)圖書編碼,書名,出版社名,中南分校編碼,作者名,作者號(hào)。 (2)創(chuàng)建視圖“ cx_zj”,要求各用戶只能查找作家出版社的書籍名稱,作者,副本編號(hào)。 (3)創(chuàng)建視圖“cx_anni”,要求查看作者為安妮寶貝所有的書籍信
10、息的視圖。 4.文件位置 數(shù)據(jù)庫(kù)中數(shù)據(jù)文件,控制文件,日志文件,參數(shù)文件的存取路徑 D:\Oracle\數(shù)據(jù)文件 D:\Oracle\控制文件 D:\Oracle\日志文件 D:\Oracle\參數(shù)文件 三、 數(shù)據(jù)庫(kù)實(shí)現(xiàn) 3.1表空間 表空間的創(chuàng)建(注意:數(shù)據(jù)表空間和索引表空間分別建立在不同磁盤上) //創(chuàng)建數(shù)據(jù)表空間?? SQL> create tablespace data 2 logging 3 datafile 'D:\Oracle\product\10.2.0\oradata\library\data01.dbf' 4 size
11、50m 5 reuse autoextend off; 表空間已創(chuàng)建。 //創(chuàng)建索引表空間 SQL> create tablespace indx 2 datafile 'F:\Oracle\product\10.2.0\oradata\library\indx01.dbf' 3 size 32m 4 reuse autoextend on next 1280k 5 minimum extent 128k 6 default storage 7 (initial 128k next 128
12、k minextents 1 maxextents 4096 pctincrease 0); 表空間已創(chuàng)建。 3.2 數(shù)據(jù)表 1.數(shù)據(jù)表的創(chuàng)建,注意要有表中的約束的定義,以及表間的約束的定義。 (1)創(chuàng)建Books表 SQL> create table Books 2 (isbn char(20) not null primary key, 3 title char(30), 4 pubname char(30), 5 author char(30), 6 authorno number(30), 7 zncode number(30))
13、; 表已創(chuàng)建。 (2)創(chuàng)建Copies表 SQL> create table copies 2 (copyno number(10) not null primary key, 3 isbn char(20) 4 constraint fk_copyno foreign key(isbn) references books(isbn)); 表已創(chuàng)建。 (3)創(chuàng)建Authors表 SQL> create table Authors 2 (authorno number(10) not null primary key, 3 authorna
14、me char(20)); 表已創(chuàng)建。 (4)創(chuàng)建Categories表 SQL> create table Categories 2 (zncode number(20)not null primary key, 3 catename char(20)); 表已創(chuàng)建。 (5)創(chuàng)建Writers表 SQL> create table Writers 2 (isbn char(20)not null, 3 authorno number(20)not null, 4 constraint pk_writers primary key(isbn
15、,authorno)); 表已創(chuàng)建。 (6)創(chuàng)建Publishers表 SQL> create table Publishers 2 (pubname char(30)not null primary key, 3 address char(50)); 表已創(chuàng)建。 (7)創(chuàng)建Users表 SQL> create table Users 2 (UserName char(20) not null, 3 UserPwd char(20) not null, 4 UserNo number(12) primary key, 5 Birth
16、date not null, 6 Quanxian number(20), 7 Email char(30), 8 TEL char(20), 9 Address char(20)); 表已創(chuàng)建。 2.表中數(shù)據(jù)的插入(每張表中至少要有10條數(shù)據(jù)) (1)Books表 insert into Books(ISBN,Title,PubName,ZNCode,author,authorno) values('A0001','草樣年華','長(zhǎng)江文藝出版社',1,'孫睿',1); Insert into Books(ISBN,Title,PubName,
17、ZNCode,author,authorno) values('A0002','蓮花','武漢大學(xué)出版社',2,'安妮寶貝',2); Insert into Books(ISBN,Title,PubName,ZNCode,author,authorno) values('A0003','小王子','作家出版社',3,'黃葒',3); Insert into Books(ISBN,Title,PubName,ZNCode,author,authorno) values('A0004','彼岸花','北京大學(xué)出版社',4,'安妮寶貝',2); Insert into
18、 Books(ISBN,Title,PubName,ZNCode,author,authorno) values('A0005','二三事','武漢大學(xué)出版社',5,'安妮寶貝',2); Insert into Books(ISBN,Title,PubName,ZNCode,author,authorno) values('A0006','霜冷長(zhǎng)河','作家出版社',6,'余秋雨',4); Insert into Books(ISBN,Title,PubName,ZNCode,author,authorno) values('A0007','笛聲何處','作家出版社'
19、,7,'余秋雨',4); insert into Books(ISBN,Title,PubName,ZNCode,author,authorno) values('A0008','夢(mèng)里花落知多少','長(zhǎng)江文藝出版社',8,'郭敬明',5); insert into Books(ISBN,Title,PubName,ZNCode,author,authorno) values('A0009','小時(shí)代','長(zhǎng)江文藝出版社',9,'郭敬明',5); insert into Books(ISBN,Title,PubName,ZNCode,author,autho
20、rno) values('A00010','三重門','作家出版社',10,'韓寒',6); (2)Copies表 insert into copies(copyno,isbn) values(1001,'A0001'); insert into copies(copyno,isbn) values(1002,'A0002'); insert into copies(copyno,isbn) values(1003,'A0003'); insert into copies(copyno,isbn) values(1004,'A0004'); insert into copies
21、(copyno,isbn) values(1005,'A0005'); insert into copies(copyno,isbn) values(1006,'A0006'); insert into copies(copyno,isbn) values(1007,'A0007'); insert into copies(copyno,isbn) values(1008,'A0008'); insert into copies(copyno,isbn) values(1009,'A0009'); insert into copies(copyno,isbn) values(1001
22、0,'A00010'); (3)Users表 insert into Users(UserName,UserPwd,UserNo,Birth,QuanXian,Email,TEL,Address) Values('馮美','123', 1,1,TO_DATE('1986-09-01','YYYY-MM-DD'),'@','','hubei'); Insert into Users(UserName,UserPwd,UserNo,Birth,QuanXian,Email,TEL,Address) values('王燦','456', 2,2,TO_DATE('199
23、8-10-09','YYYY-MM-DD'),'@','','hubei'); Insert into Users(UserName,UserPwd,UserNo,Birth,QuanXian,Email,TEL,Address) values('楊攀','789', 3,2,TO_DATE('1984-10-01','YYYY-MM-DD'),'@','','hubei'); Insert into Users(UserName,UserPwd,UserNo,Birth,QuanXian,Email,TEL,Address) values('張楠楠','111',
24、 4,2,TO_DATE('1978-02-09','YYYY-MM-DD'),'@','','hubei'); Insert into Users(UserName,UserPwd,UserNo,Birth,QuanXian,Email,TEL,Address) values('王子莫','222', 5,2,TO_DATE('1989-01-09','YYYY-MM-DD'),'@','','hubei'); Insert into Users(UserName,UserPwd,UserNo,Birth,QuanXian,Email,TEL,Address) va
25、lues('李麗','333', 6,2,TO_DATE('1989-01-09','YYYY-MM-DD'),'@','','hubei'); Insert into Users(UserName,UserPwd,UserNo,Birth,QuanXian,Email,TEL,Address) values('張婷','444', 7,2,TO_DATE('1988-05-09','YYYY-MM-DD'),'@','','hubei'); Insert into Users(UserName,UserPwd,UserNo,Birth,QuanXian,Email,TEL
26、,Address) values('王維','555', 8,2,TO_DATE('1986-07-19','YYYY-MM-DD'),'@','','hubei'); Insert into Users(UserName,UserPwd,UserNo,Birth,QuanXian,Email,TEL,Address) values('劉曉林','666', 9,2,TO_DATE('1989-11-16','YYYY-MM-DD'),'@','','hubei'); Insert into Users(UserName,UserPwd,UserNo,Birth,Q
27、uanXian,Email,TEL,Address) values('羅莎','777', 10,2,TO_DATE('1989-12-12','YYYY-MM-DD'),'@','','hubei'); 3.數(shù)據(jù)的修改和刪除 (1)數(shù)據(jù)的修改 將用戶為9的用戶的聯(lián)系電話修改為 update Users set TEL='’ where userno=9; (2)數(shù)據(jù)的刪除 將用戶羅莎刪除 delete from Users where username='羅莎'; 3.3索引和視圖 1.索引的創(chuàng)建 (1)在Books表中的書名創(chuàng)建索引
28、。 SQL> create index Books_ title _idx 2 on Books(title); 索引已創(chuàng)建。 (2)為Users表的姓名創(chuàng)建索引。 SQL> create index Users_username_idx 2 on Users(username); 索引已創(chuàng)建。 (3)為副本表中的副本編號(hào)創(chuàng)建索引 SQL> create index Copies_copyno_idx 2 on Copies(copyno); 索引已創(chuàng)建。 2.視圖的創(chuàng)建 (1)創(chuàng)建視圖“c
29、x_books”,要求查看圖書的國(guó)際標(biāo)準(zhǔn)圖書編碼,書名,出版社名,中南分校編碼,作者名,作者號(hào)。 SQL> create or replace view cx_books 2 as 3 select ISBN,Title,PubName,ZNCode,author,authorno 4 from Books; 視圖已創(chuàng)建。 (2)創(chuàng)建視圖“ cx_zj”,要求各用戶只能查找作家出版社的圖書名稱,作者,副本編號(hào)。 SQL> create or replace view cx_zj 2 as 3 select title,author,copyno
30、 4 from Books,Copies 5 where Copies.isbn=Books.isbn and PubName='作家出版社'; 視圖已創(chuàng)建。 (3)創(chuàng)建視圖“cx_anni”,要求查看作者為安妮寶貝所有的圖書信息的視圖。 SQL> create or replace view cx_anni 2 as 3 select * 4 from Books 5 where author='安妮寶貝'; 視圖已創(chuàng)建。 3.數(shù)據(jù)的查詢(要求做基礎(chǔ)數(shù)據(jù)的查詢,做視圖的查詢,查詢要和系統(tǒng)的功能聯(lián)系起來) (1)查詢圖
31、書表中作者號(hào)為2的作者所有作品的書名和出版社。 (2)查找所有姓王的用戶的編號(hào),姓名,聯(lián)系電話,地址。 (3)查找由作家出版社出版的所有圖書的副本編號(hào)。 3.4 PL/SQL程序塊(至少2個(gè)程序塊) 1.存儲(chǔ)過程的定義 添加書籍信息的存儲(chǔ)過程BooksAdd SQL> create or replace procedure BooksAdd 2 (isbn in char,title in char,pubname in char, 3 author in char,authorno in char,zncode in char)
32、 4 as 5 begin 6 insert into Books 7 values(isbn,title,pubname,author,authorno,zncode); 8 end BooksAdd;/ 過程已創(chuàng)建。 2.函數(shù)的定義 總計(jì)所有作者的數(shù)量 SQL> create or replace function count 2 (cnum in char) 3 return number 4 as 5 cnt number; 6 begin 7
33、 select count(author) into cnt 8 from Books; 9 return(cnt); 10 end count; / 函數(shù)已創(chuàng)建。 3.觸發(fā)器的定義 刪除Books書籍信息表中的一條記錄,刪除記錄isbn的字段值在Copies副本信息表中對(duì)應(yīng)的記錄 SQL> create or replace trigger BooksDelete 2 after delete on Books for each row 3 begin 4 delete from Copies 5
34、 where isbn=:OLD.isbn; 6 end BooksDelete; 7 / 觸發(fā)器已創(chuàng)建。 3.4.1 用戶權(quán)限 授予Reader: grant select on books to reader; grant select on publishers to reader; grant select on authors to reader; grant select on copies to reader; grant select on writers to reader; grant select on categories to
35、 reader; 3.4.2登陸模塊 管理員界面模塊 讀者主界面模塊 登陸: declare cursor login (tuser Users.UserName%type,tpwd Users.UserPwd%type) is select * from Users where UserName=tuser and UserPwd=tpwd; loginrow login%rowtype; begin open login(:login.tuser,:login.tpwd); fetch login into loginrow; if lo
36、gin%found then go_block('main'); message('登錄成功!');commit; :login.tuser:=''; :login.tpwd:=''; :global.quanxian:=loginrow.quanxian; :global.userno:=loginrow.userno; :global.punish:=0; else message('對(duì)不起,用戶名或密碼錯(cuò)誤,請(qǐng)重新輸入!');commit; :login.tuser:='';:login.tpwd:='';
37、 end if; close login; end; 退出: declare alert_button number; begin alert_button:=show_alert('exit_form'); if alert_button=ALERT_BUTTON1 then EXIT_FORM; else bell; end if ; end; 3.4.3修改出版信息 declare cursor u(bnoo publishers.pubname%type) is select * from publishers where
38、 pubname=bnoo; u1 u%rowtype; alert_button number; a number; begin open u(:publisher.pubname); fetch u into u1; --select count(*) into a from books where ISBN=:booksmana.ISBN; if u%found then alert_button:=show_alert('alter'); fetch u into u1; if alert_button=ALERT_BUTTON1 t
39、hen update publishers set pubname=:publisher.pubname,address=:publisher.address; message('修改成功!'); commit; end if; else message('沒有此書,無法修改!'); end if; commit; close u; end; 3.4.4修改副本信息 declare cursor u(bnoo copies.copyno%type) is select * from copies where copyno=bnoo;
40、 u1 u%rowtype; alert_button number; a number; begin open u(:copies.copyno); fetch u into u1; select count(*) into a from books where ISBN=:booksmana.ISBN; if u%found then alert_button:=show_alert('alter'); fetch u into u1; if alert_button=ALERT_BUTTON1 then update copies
41、set copyno=:copies.copyno,isbn=:copies.isbn; message('修改成功!'); commit; end if; else message('沒有此書,無法修改!'); end if; commit; close u; end; 3.4.5圖書副本信息查詢 declare cursor b is select * from copies; bs b%rowtype; v_count binary_integer; begin select count(rowid) into v_co
42、unt from copies; open b; if(:global.punish=0) then message('已經(jīng)到達(dá)第一頁(yè)!');commit; else :global.punish:=:global.punish-1; for i in 0..(:global.punish) loop fetch b into bs; :booksmana.copyno:=bs.copyno; :booksmana.isbn:=bs.isbn; end loop; end if; close b; end;
43、 declare cursor b is select * from copies; bs b%rowtype; v_count binary_integer; begin select count(rowid) into v_count from copies; open b; if(:global.punish=v_count) then message('已經(jīng)到達(dá)最后一頁(yè)!');commit; else :global.punish:=:global.punish+1; for i in 0..(:global.punish)
44、 loop fetch b into bs; :booksmana.copyno:=bs.copyno; :booksmana.isbn:=bs.isbn; end loop; end if; close b; end; 3.4.6用戶信息管理模塊 用戶信息查看: declare cursor u is select * from users; admrow u%rowtype; v_count binary_integer; begin select count(rowid) into v_count from
45、users; open u; if(:global.punish=0) then message('已經(jīng)到達(dá)第一條!');commit; else :global.punish:=:global.punish-1; for i in 0..(:global.punish) loop fetch u into admrow; :adminmana.userno:=admrow.userno; :adminmana.username:=admrow.username; :adminmana.userpwd:=admrow.userp
46、wd; :adminmana.quanxian:=admrow.quanxian; :adminmana.birth:=admrow.birth; :adminmana.email:=admrow.email; :adminmana.address:=admrow.address; :adminmana.tel:=admrow.tel; end loop; message(:global.punish); close u; end if; end; declare cursor u is select * from users;
47、admrow u%rowtype; v_count binary_integer; begin select count(rowid) into v_count from users; open u; if(:global.punish=v_count) then message('已經(jīng)到達(dá)最后一條!');commit; else :global.punish:=:global.punish+1; for i in 0..(:global.punish) loop fetch u into admrow; :adminmana
48、.userno:=admrow.userno; :adminmana.username:=admrow.username; :adminmana.userpwd:=admrow.userpwd; :adminmana.quanxian:=admrow.quanxian; :adminmana.birth:=admrow.birth; :adminmana.email:=admrow.email; :adminmana.address:=admrow.address; :adminmana.tel:=admrow.tel; end loop;
49、message(:global.punish); close u; end if; end; 添加用戶: declare a number; alert_button number; begin select count(*) into a from users where userno=:adminmana.userno; if a!=0 then message('該用戶已存在.請(qǐng)重新輸入注冊(cè)用戶信息!');commit; else alert_button:=show_alert('ZHUCE'); if alert_button=ALERT_
50、BUTTON1 then insert into users(UserName,UserPwd,UserNo,QuanXian,Birth,Email,TEL,Address) values(:adminmana.username,:adminmana.userpwd,:adminmana.userno:2, :adminmana.birth,:adminmana.email,:adminmana.tel, :adminmana.address); message('注冊(cè)成功'); commit; else bell; end if ; end
51、 if; end; 刪除用戶: declare pc number(8); cursor u(uno users.userno%type) is select * from users where userno=uno; u1 u%rowtype; alert_button number; begin open u(:adminmana.userno); fetch u into u1; if u%found then alert_button:=show_alert('delete'); if alert_button=ALERT_BUTTO
52、N1 then pc:=:adminmana.userno; delete from users where userno=pc; message('刪除成功'); else bell; end if; else message('沒有此用戶'); end if; commit; close u; end; 修改用戶信息: declare pc number(8); cursor u(uno users.userno%type) is select * from users where userno=u
53、no; u1 u%rowtype; alert_button number; a number; begin open u(:adminmana.userno); fetch u into u1; select count(*) into a from users where userno=:adminmana.userno; if u%found then alert_button:=show_alert('alter'); fetch u into u1; if alert_button=ALERT_BUTTON1 then p
54、c:=:adminmana.userno; update users set username=:adminmana.username,userpwd=:adminmana.userpwd,birth=:adminmana.birth, address=:adminmana.address,tel=:adminmana.tel, email=:adminmana.email where userno=pc; message('修改成功!'); else bell; end if; else message('修改失敗!'); e
55、nd if; commit; close u; end; 重置: :ADMINMANA.userno:=''; :ADMINMANA.username:=''; :ADMINMANA.userpwd:=''; :ADMINMANA.address:=''; :ADMINMANA.email:=''; :ADMINMANA.tel:=''; 四、 心得體會(huì) 這次課程設(shè)計(jì)我選的題目是圖書管理信息系統(tǒng),目的是將我們這一學(xué)年學(xué)習(xí)的Oracle理論知識(shí)用于實(shí)踐,將分散的知識(shí)點(diǎn)有機(jī)地統(tǒng)一結(jié)合起來盡量開發(fā)出一個(gè)相對(duì)完善的系統(tǒng)。熟練掌握數(shù)據(jù)庫(kù)的備份、恢復(fù),掌握游標(biāo)(包括隱式游標(biāo)和
56、顯示游標(biāo))、菜單、警告等的使用,掌握頁(yè)面布局等所學(xué)知識(shí)。 這次課程設(shè)計(jì)不像以前的課程設(shè)計(jì)那樣是團(tuán)體合作完成,而是要自己一個(gè)人完成,所以個(gè)人工作量相對(duì)大了很多。我這次過程中,遇到了很多問題,對(duì)書本知識(shí)不熟悉,很多學(xué)習(xí)過的知識(shí)都基本遺忘,所以不得一邊設(shè)計(jì)系統(tǒng)一邊重新溫習(xí)課本。在溫習(xí)過程中我發(fā)現(xiàn)理論和實(shí)踐是有很大差別的,有些東西理論上感覺已經(jīng)掌握但是實(shí)際一操作就會(huì)有錯(cuò)誤出現(xiàn),對(duì)于某些知識(shí)不知道該怎樣運(yùn)用在系統(tǒng)中,也不清楚該系統(tǒng)怎樣布局,需要用到些什么。不過后來,通過查閱資料,并在其他同學(xué)和老師的幫助下基本解決了這些問題。 通過這次課程設(shè)計(jì),我把理論知識(shí)應(yīng)用到了實(shí)際編程中,熟練掌握了庫(kù)表的創(chuàng)建,游
57、標(biāo)、警告、各種布局工具的使用,掌握了數(shù)據(jù)庫(kù)的邏輯備份,學(xué)會(huì)了編寫代碼實(shí)現(xiàn)程序,還學(xué)到了很多平時(shí)不了解的知識(shí)。在此次課程設(shè)計(jì)中,我懂得了團(tuán)隊(duì)力量的偉大,不知道的知識(shí)同學(xué)之間可以相互探討、也可以請(qǐng)教老師,我們能夠從老師那里學(xué)到很多知識(shí)。這次的系統(tǒng)設(shè)計(jì)為我畢業(yè)后適應(yīng)適應(yīng)工作打下了基礎(chǔ),了解到團(tuán)隊(duì)合作、文檔編寫、口頭與書面表達(dá)的重要性。并在設(shè)計(jì)實(shí)踐中,我提高了自學(xué)能力,提高了今后參與開發(fā)稍大規(guī)模實(shí)際軟件項(xiàng)目和探索未知領(lǐng)域知識(shí)的能力和自信心,學(xué)到了很多書本里沒有的知識(shí)。再次體會(huì)到實(shí)踐對(duì)理論知識(shí)的提高有不可忽視的作用,并且在實(shí)踐過程中遇到困難要積極思考、勇于解決,不要輕言放棄! 通過這次課程設(shè)計(jì)我是受益匪淺,不僅所學(xué)知識(shí)更加牢固,而且更深刻地了解到了課程設(shè)計(jì)對(duì)于我們的重要性。 五、 參考書目 《Oracle實(shí)用教程第二版》 《Oracle10g數(shù)據(jù)庫(kù)入門與實(shí)踐》 《數(shù)據(jù)庫(kù)系統(tǒng)原理與應(yīng)用第二版》 專心---專注---專業(yè)
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024《增值稅法》全文學(xué)習(xí)解讀(規(guī)范增值稅的征收和繳納保護(hù)納稅人的合法權(quán)益)
- 2024《文物保護(hù)法》全文解讀學(xué)習(xí)(加強(qiáng)對(duì)文物的保護(hù)促進(jìn)科學(xué)研究工作)
- 銷售技巧培訓(xùn)課件:接近客戶的套路總結(jié)
- 20種成交的銷售話術(shù)和技巧
- 銷售技巧:接近客戶的8種套路
- 銷售套路總結(jié)
- 房產(chǎn)銷售中的常見問題及解決方法
- 銷售技巧:值得默念的成交話術(shù)
- 銷售資料:讓人舒服的35種說話方式
- 汽車銷售績(jī)效管理規(guī)范
- 銷售技巧培訓(xùn)課件:絕對(duì)成交的銷售話術(shù)
- 頂尖銷售技巧總結(jié)
- 銷售技巧:電話營(yíng)銷十大定律
- 銷售逼單最好的二十三種技巧
- 銷售最常遇到的10大麻煩