oracle圖書管理系統數據庫設計與實現_第1頁
oracle圖書管理系統數據庫設計與實現_第2頁
oracle圖書管理系統數據庫設計與實現_第3頁
oracle圖書管理系統數據庫設計與實現_第4頁
oracle圖書管理系統數據庫設計與實現_第5頁
已閱讀5頁,還剩11頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、濱江學院 題 目 圖書管理系統數據庫設計與實現 院 系 年級班級 學生姓名 學 號 學 期 任課教師 2014年12月5日目 錄1 系統分析21.1 需求分析21.2 設計目標21.3 項目規劃22 數據庫設計42.1 系統功能模塊設計42.2 數據庫概念結構設計42.3 數據庫邏輯結構設計63 數據庫系統設計與實現83.1 創建和管理表81.1 創建表空間81.2 創建數據表83.2 創建和管理視圖93.3 創建和管理序列103.4 創建和管理索引103. 5 創建和管理存儲過程103.6 創建和管理觸發器114 數據庫訪問124.1 數據查詢124.2 數據更新122.1 表中數據的插入1

2、22.2 數據的修改和刪除144.3 數據合并154.4 結果集集合操作151 系統分析1.1 需求分析隨著互聯網的爆炸性發展,人們越來越習慣于利用網絡來實現所需的服務,網絡已深深影響到人們生活的各個方面。另外,傳統的圖書館不能滿足一部分現代人的需要,而電子閱覽室,由于其不受時間與空間的限制同時又具有傳統圖書館的大部分功能,能夠滿足各類用戶的常規與特殊需求,而且其方便快捷,實現技術又比較成熟,因此受到當代人的喜愛。圖書館在正常運營中面對大量書籍、讀者信息以及兩者間相互聯系產生的借書信息、還書信息。現有的人工記錄方法既效率低又錯誤過多,大大影響了圖書館的正常管理工作。因此需要對書籍資源、讀者資源

3、、借書信息、還書信息進行管理,及時了解各個環節中信息的變更,有利于管理效率的提高該系統主要分為兩部分:讀者部分和管理員部分。為了方便讀者查找自己感興趣的主題進行閱讀,要將圖書按照內容進行分類。讀者可以按照類別進行查找,逐級瀏覽、可以查看自己的信息。本系統還可對用戶的賬號和書目的閱讀權限進行管理。管理員需要給用戶分配用戶名和密碼,及設定用戶的級別。 1.2 設計目標圖書管理系統的開發主要要實現的目標有以下幾個方面:(1)界面設計友好、美觀。(2)數據存儲安全、可靠。(3)信息分類清晰、準確。(4)強大的查詢功能,保證數據查詢的靈活性。(5)實現對圖書借閱和歸還過程的全程數據信息跟蹤。(6)提供圖

4、書借閱排行榜,為圖書管理員提供了真實的數據信息。(7)提供靈活、方便的權限設置功能,使整個系統的管理分工明確。(8)具有易維護性和易操作性。1.3 項目規劃(1)登錄模塊 用戶登錄:用戶在登陸頁面登陸,登陸成功進入系統。管理員登陸:用于管理員的登陸,在后臺登陸頁面登陸,登陸成功進入系統。 圖書管理員與系統管理員后臺功能不一樣。查詢用戶表,對應用戶名、密碼正確則進入系統,對應用戶名密碼不正確則顯示相應信息(2)圖書管理模塊對圖書進行添加、查詢、修改、刪除、添加。將輸入的圖書信息添加到數據庫圖書表中,以方便進行各種查詢及更新操作,根據輸入的圖書名稱或作者,查詢數據庫圖書表中的相應記錄并顯示相應圖書

5、信息,更新數據庫圖書表中對應記錄并顯示更新后的圖書信息,刪除數據庫圖書表中對應記錄。(3)副本信息模塊對圖書的副本信息進行添加、修改、刪除。將輸入的圖書副本信息添加到副本表中,并分配一個獨立的中南碼根據輸入的中南碼或國際標準圖書編碼,查詢圖書副本表,顯示副本信息更新副本表的數據庫、刪除副本表中所對應的圖書信息、修改副本表中錯誤的信息并更新數據庫。(4)用戶管理模塊對用戶進行添加、刪除、修改。將輸入的用戶信息添加到用戶表中,并分配一個獨立的用戶號根據輸入的用戶名的姓名或生日,查詢用戶表,顯示用戶信息更新用戶表的數據庫、刪除用戶表中所對應的、修改用戶中錯誤的信息并更新數據庫。2 數據庫設計2.1

6、系統功能模塊設計根據圖書管理系統的實際需求,可以將圖書管理系統劃分為管理員頁面和讀者頁面,2個主頁面,每個主頁面又分為若干個的具體功能的分頁面,功能結構圖如圖2.1所示。圖書管理系統管理員主頁面讀者主頁面用戶信息管理界面添加圖書修改出版信息修改副本信息修改人代碼圖書信息查詢圖書副本信息查詢圖2.1 圖書管理系統功能圖2.2 數據庫概念結構設計管理員E-R圖如下圖2.2所示:管理員姓名密碼加入時間用戶名圖2.2 管理員E-R圖學生E-R圖如下圖2.3所示:讀者學號密碼姓名用戶名電話班級院系性別圖2.3 學生E-R圖圖書E-R圖如下圖2.4所示:讀者圖書姓名庫存作者價格圖書編號圖示類別出版社圖2.

7、4 圖書E-R圖系統總E-R圖,如圖2.5所示圖2.5 圖書管理系統數據庫E-R圖2.3 數據庫邏輯結構設計數據庫設計有8張表,分別是:Users表(用戶表)Books表(書籍表)Copies表(副本表)、Authors表(作者表)、Categories表(分類目錄表)、Writers表(寫書表)、Publishers表(出版社表)、Borrow表(借閱表)表2.1 Books表字段數據類型數據長度能否為空中文名備注ISBNChar20否國際標準圖書編碼主鍵TitleChar30是書名PubnameChar30是出版者名AuthorChar30是作者名AuthornoNumber30是作者號Z

8、NCodeNumber30是中南分校碼表2.2 Copies表字段數據類型數據長度能否為空中文名備注CopyNoNumber10否副本編號主鍵ISBNChar20是國際標準圖書編碼表2.3 Authors表字段數據類型數據長度能否為空中文名備注AuthorNoNumber10否作者號主鍵AuthorNameChar20是作者名表2.4 Categories表字段數據類型數據長度能否為空中文名備注ZNCodeNumber20否中南分校碼主鍵CateNameChar20是目錄名表2.5 Writers表字段數據類型數據長度能否為空中文名備注ISBNChar20否國際標準圖書編碼主鍵AuthorNo

9、Number20否作者號主鍵表2.6 Publishers表字段數據類型數據長度能否為空中文名備注PubNameChar30否出版者名主鍵AddressChar50是地址表2.7 Users表字段數據類型數據長度能否為空中文名備注UsersNoNumber12否用戶編號主鍵UserNameChar20否用戶名UserPwdChar20否用戶密碼QuanxianNumber20否權限BirthdayDate否用戶生日EmailChar30是用戶的郵箱TelChar20是用戶的聯系電話AddressChar20是籍貫3 數據庫系統設計與實現3.1 創建和管理表1.1 創建表空間創建數據專屬表空間,

10、 SQL> create tablespace data 2 logging 3 datafile 'D:oracleproduct10.2.0oradataorcldata03.dbf' 4 size 50m 5 reuse autoextend off;1.2 創建數據表根據數據邏輯結構表創建數據表,注意要有表中的約束的定義,以及表間的約束的定義。(1) 創建Books表SQL> create table Books2 (isbn char(20) not null primary key,3 title char(30),4 pubname char(30),

11、5 author char(30),6 authorno number(30),7 zncode number(30);(2) 創建Copies表SQL> create table copies2 (copyno number(10) not null primary key,3 isbn char(20);(3) 創建Authors表SQL> create table Authors2 (authorno number(10) not null primary key,3 authorname char(20);(4) 創建Categories表SQL> create ta

12、ble Categories2 (zncode number(20)not null primary key,3 catename char(20);(5) 創建Writers表SQL> create table Writers2 (isbn char(20)not null,3 authorno number(20)not null);(6) 創建Publishers表SQL> create table Publishers2 (pubname char(30)not null primary key,3 address char(50);(7) 創建Users表SQL>

13、create table Users2 (UserName char(20) not null,3 UserPwd char(20) not null,4 UserNo number(12) primary key,5 Birth date not null, 6 Quanxian number(20),7 Email char(30),8 TEL char(20),9 Address char(20);3.2 創建和管理視圖(1) 創建視圖“cx_books”,要求查看圖書的國際標準圖書編碼,書名,出版社名,中南分校編碼,作者名,作者號。SQL> create or replace v

14、iew cx_books2 as3 select ISBN,Title,PubName,ZNCode,author,authorno4 from Books;(2) 創建視圖“ cx_zj”,要求各用戶只能查找作家出版社的圖書名稱,作者,副本編號。SQL> create or replace view cx_zj2 as 3 select title,author,copyno4 from Books,Copies 5 where Copies.isbn=Books.isbn and PubName='作家出版社'(3) 創建視圖“cx_anni”,要求查看作者為安妮寶貝

15、所有的圖書信息的視圖。SQL> create or replace view cx_anni2 as3 select *4 from Books5 where author='安妮寶貝'3.3 創建和管理序列創建序列“cx_un”,要求序列值從1開始,增長步長為1,無最大值限制,不循環,默認高速緩存20列值,不保證有序SQL> create sequence cx_un 2 increment3 by 1 start with 14 nomaxvalue nocycle;3.4 創建和管理索引(1) 在Books表中的書名創建索引。SQL> create in

16、dex Books_title_idx2 on Books(title);(2) 為Users表的姓名創建索引。SQL> create index Users_username_idx2 on Users(username); (3) 為副本表中的副本編號創建索引SQL> create index Copies_copyno_idx2 on Copies(copyno);3. 5 創建和管理存儲過程添加書籍信息的存儲過程BooksAdd,當管理員進行信息添加時,可以快速調用。SQL> create or replace procedure BooksAdd 2 (isbn i

17、n char,title in char,pubname in char, 3 author in char,authorno in char,zncode in char) 4 as 5 begin 6 insert into Books 7 values(isbn,title,pubname,author,authorno,zncode); 8 end BooksAdd;9 /3.6 創建和管理觸發器刪除Books書籍信息表中的一條記錄,刪除記錄isbn的字段值在Copies副本信息表中對應的記錄SQL> create or replace trigger BooksDelete 2

18、 after delete on Books for each row 3 begin 4 delete from Copies 5 where isbn=:OLD.isbn; 6 end BooksDelete; 7 /4 數據庫訪問4.1 數據查詢(1)查詢圖書表中作者號為2的作者所有作品的書名和出版社。(2)查找所有姓王的用戶的編號,姓名,聯系電話,地址。(3)查找由作家出版社出版的所有圖書的副本編號。 4.2 數據更新2.1 表中數據的插入(1) Books表insert into Books(ISBN,Title,PubName,ZNCode,author,authorno) val

19、ues('A0001','草樣年華','長江文藝出版社',1,'孫睿',1);Insert into Books(ISBN,Title,PubName,ZNCode,author,authorno)values('A0002','蓮花','武漢大學出版社',2,'安妮寶貝',2);Insert into Books(ISBN,Title,PubName,ZNCode,author,authorno) values('A0003','小王子

20、9;,'作家出版社',3,'黃葒',3);Insert into Books(ISBN,Title,PubName,ZNCode,author,authorno)values('A0004','彼岸花','北京大學出版社',4,'安妮寶貝',2);Insert into Books(ISBN,Title,PubName,ZNCode,author,authorno) values('A0005','二三事','武漢大學出版社',5,'安妮寶貝&

21、#39;,2);Insert into Books(ISBN,Title,PubName,ZNCode,author,authorno) values('A0006','霜冷長河','作家出版社',6,'余秋雨',4);Insert into Books(ISBN,Title,PubName,ZNCode,author,authorno)values('A0007','笛聲何處','作家出版社',7,'余秋雨',4);insert into Books(ISBN,Ti

22、tle,PubName,ZNCode,author,authorno) values('A0008','夢里花落知多少','長江文藝出版社',8,'郭敬明',5);insert into Books(ISBN,Title,PubName,ZNCode,author,authorno) values('A0009','小時代','長江文藝出版社',9,'郭敬明',5);insert into Books(ISBN,Title,PubName,ZNCode,author,

23、authorno) 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(copy

24、no,isbn) values(1004,'A0004');insert into copies(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

25、(copyno,isbn) values(1009,'A0009');insert into copies(copyno,isbn) values(10010,'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'),'530347830

26、9;,'#39;,'hubei');Insert into Users(UserName,UserPwd,UserNo, Birth,QuanXian,Email,TEL,Address) values('王燦','456',2,2,TO_DATE('1998-10-09','YYYY-MM-DD'),'297074969','1355041230','hubei');Insert into Users(UserName,UserPwd

27、,UserNo, Birth,QuanXian,Email,TEL,Address) values('楊攀','789',3,2,TO_DATE('1984-10-01','YYYY-MM-DD'),'503381172','1355041316','hubei');Insert into Users(UserName,UserPwd,UserNo, Birth,QuanXian,Email,TEL,Address) values('張楠楠','111'

28、;,4,2,TO_DATE('1978-02-09','YYYY-MM-DD'),'502881172 ','1355041720','hubei');Insert into Users(UserName,UserPwd,UserNo, Birth,QuanXian,Email,TEL,Address) values('王子莫','222',5,2,TO_DATE('1989-01-09','YYYY-MM-DD'),'503381171

29、9;,'1355041136','hubei');Insert into Users(UserName,UserPwd,UserNo, Birth,QuanXian,Email,TEL,Address) values('李麗','333',6,2,TO_DATE('1989-01-09','YYYY-MM-DD'),'503386472','1355041510','hubei');Insert into Users(UserName,UserPwd,

30、UserNo, Birth,QuanXian,Email,TEL,Address) values('張婷','444',7,2,TO_DATE('1988-05-09','YYYY-MM-DD'),'403386472','1355041732','hubei');Insert into Users(UserName,UserPwd,UserNo, Birth,QuanXian,Email,TEL,Address) values('王維','555',8,2,TO_DATE('1986-07-19','YYYY-MM-DD'),'503122347 ','1355041110','hubei&

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論