Oracle數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告_第1頁(yè)
Oracle數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告_第2頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 8/8Oracle數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告 華東交通大學(xué)理工學(xué)院 課程設(shè)計(jì)報(bào)告書 所屬課程名稱 Oracle 11g數(shù)據(jù)庫(kù)基礎(chǔ)教程 題目圖書管理系統(tǒng) 分院電信分院 專業(yè)班級(jí)電子商務(wù)1班 學(xué)號(hào)223 學(xué)生姓名何芳林 指導(dǎo)教師付念 2013 年 12 月 20 日 課程設(shè)計(jì)(論文)評(píng)閱意見 評(píng)閱人職稱 20 年月日 目錄 第1章引言 (3) 第2章概要設(shè)計(jì) (5) 2.1系統(tǒng)需求分析 (5) 2.2系統(tǒng)結(jié)構(gòu)設(shè)計(jì) (6) 2.3系統(tǒng)功能模塊 (7) 第3章數(shù)據(jù)庫(kù)分析 (8) 3.1 數(shù)據(jù)庫(kù)總體設(shè)計(jì) (8) 3.2 數(shù)據(jù)表設(shè)計(jì) (8) 3.3 數(shù)據(jù)庫(kù)的創(chuàng)建 (9) 3.4存儲(chǔ)過程和觸發(fā)器 (11) 第4章

2、詳細(xì)設(shè)計(jì)及測(cè)試 (13) 4.1 系統(tǒng)界面 (13) 4.2 主要代碼設(shè)計(jì) (16) 4.3 功能整體鏈接測(cè)試 (18) 第5章課程設(shè)計(jì)心得 (19) 第1章引言 1.設(shè)計(jì)目的 使用VC,C+,C#等作為前臺(tái)開發(fā)工具,使用Oracle作為后臺(tái)數(shù)據(jù)庫(kù),所設(shè)計(jì)的管理系統(tǒng)應(yīng)包含輸入輸出、查詢、插入、修改、刪除等基本功能。根據(jù)題目的基本需求,設(shè)計(jì)系統(tǒng)界面、數(shù)據(jù)庫(kù)、編寫程序(Oracle),并寫出課程設(shè)計(jì)報(bào)告 1、閱讀資料:每個(gè)人必須提前閱讀教材有關(guān)Oracle、VC、C+、C#應(yīng)用方面的內(nèi)容以及其它相關(guān)書籍。 2、需求分析:題目要求達(dá)到的功能,所提供的原始數(shù)據(jù),需要輸出的數(shù)據(jù)及樣式等。 3、數(shù)據(jù)庫(kù)的設(shè)

3、計(jì):根據(jù)要求設(shè)計(jì)數(shù)據(jù)庫(kù)的結(jié)構(gòu),包括:表、數(shù)據(jù)完整性、關(guān)系、視圖。 4、數(shù)據(jù)庫(kù)的安全性設(shè)計(jì):登錄用戶、數(shù)據(jù)庫(kù)用戶、數(shù)據(jù)庫(kù)角色、命令許可等方面 涉及到數(shù)據(jù)的所有操作要求采用存儲(chǔ)過程的方式進(jìn)行。 2.設(shè)計(jì)要求 1選好題目:先分組,每組兩個(gè)人(或單獨(dú)完成),必須確保每題有兩組人員選做,班長(zhǎng)將本班同學(xué)的選題情況匯總后于16周之前交。 2獨(dú)立思考,獨(dú)立完成:課程設(shè)計(jì)中各任務(wù)的設(shè)計(jì)和調(diào)試要求獨(dú)立完成,遇到問題可以討論,但不可以拷貝,否則不管是抄襲還是被抄襲,雷同的全部直接評(píng)定為不及格。 3做好上機(jī)準(zhǔn)備:每次上機(jī)前,要事先編制好準(zhǔn)備調(diào)試的程序,認(rèn)真想好調(diào)試步驟和有關(guān)環(huán)境的設(shè)置方法,準(zhǔn)備好有關(guān)的文件。 4根據(jù)編

4、程實(shí)現(xiàn)的結(jié)果,按課程設(shè)計(jì)報(bào)告的撰寫規(guī)范完成數(shù)據(jù)庫(kù)系統(tǒng)課程設(shè)計(jì)報(bào)告(課程設(shè)計(jì)報(bào)告中必須有相關(guān)原理分析、程序設(shè)計(jì)、程序?qū)崿F(xiàn)和程序調(diào)試等內(nèi)容);課程設(shè)計(jì)報(bào)告的具體要求如下: 1)課設(shè)報(bào)告按照規(guī)定用A4紙張進(jìn)行排版打印,否則要求返工; 2)課設(shè)報(bào)告的內(nèi)容順序如下:封面任務(wù)書中文 3.設(shè)計(jì)環(huán)境 1.Windows7旗艦版32位 2.Microsoft Visual Studio 2005 3.Oracle 11g 第2章概要設(shè)計(jì) 2.1系統(tǒng)需求分析 圖書管理系統(tǒng)主要是用oracle數(shù)據(jù)庫(kù)進(jìn)行邏輯處理,實(shí)現(xiàn)對(duì)圖書信息的增刪改查,以及出庫(kù)入庫(kù)的管理。 2.2系統(tǒng)結(jié)構(gòu)設(shè)計(jì) 圖2.2. 圖書E-R圖 2.3系統(tǒng)

5、功能模塊 圖2.4 系統(tǒng)功能模塊圖 登入界面 圖書管理 圖書出入庫(kù) 查詢圖書新增圖書 修改圖書 刪除圖書 圖書 入庫(kù) 圖書 出庫(kù) 第3章數(shù)據(jù)庫(kù)分析 3.1 數(shù)據(jù)庫(kù)總體設(shè)計(jì) 數(shù)據(jù)庫(kù)設(shè)計(jì)是圖書管理系統(tǒng)的重要組成部分。建立良好的數(shù)據(jù)庫(kù)結(jié)構(gòu)和文件組織形式,能夠使系統(tǒng)快速、準(zhǔn)確的獲得所需信息。這里采用oracle 數(shù)據(jù)庫(kù)。該數(shù)據(jù)庫(kù)對(duì)進(jìn)行增、刪、改、查、顯示都極為方便。能為系統(tǒng)提供良好的數(shù)據(jù)支持。根據(jù)系統(tǒng)的詳細(xì)分析和和總體的需求分析,將為各個(gè)不同模塊詳細(xì)設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)。 3.2 數(shù)據(jù)表設(shè)計(jì) 用戶表(yonghu) 3.3 數(shù)據(jù)庫(kù)的創(chuàng)建 1.創(chuàng)建表空間及用戶 創(chuàng)建表空間: create tablespace

6、tushu datafile E:biaokongjiantushu.dbf size 32M autoextend on next 32m maxsize 2048m extent management local; 創(chuàng)建用戶: create user wsn identified by 1234 default tablespace tushu; 2.創(chuàng)建數(shù)據(jù)表 用戶表: create table yonghu用戶表 ( eno number primary key,-用戶編號(hào) ename varchar2(10)用戶名 ); 圖書類別表 create table typ-圖書類別表 (

7、TID varchar2(10) primary key,-類別編號(hào) TypeName varchar2(20) not null-類別名稱 ); 圖書表 create table books-圖書表 ( ISBN varchar2(20) primary key,-圖書編號(hào) BookName varchar2(40) not null,-名稱 TID varchar2(10), foreign key (TID) references typ (TID),-類別編號(hào) RetailPrice varchar2(10) not null,-零售價(jià) Author varchar2(20),- Pu

8、blish varchar2(30),-出版 StockMin number not null,-庫(kù)存下限 StockMax number not null,-庫(kù)存上限 Descriptions varchar2(100)-描述 ); 入庫(kù)表 create table InWarehouseitems-入庫(kù)表 ( ISBN varchar2(20),foreign key (ISBN) references books (ISBN),-ISBN BookName varchar2(40) not null,-名稱 RetailPrice varchar2(10) not null,-零售價(jià) s

9、huliang number-入庫(kù)數(shù)量 ); 庫(kù)存表 create table stock-庫(kù)存表 ( ISBN varchar2(20),foreign key (ISBN) references books (ISBN),-商品編號(hào) StockNum number-庫(kù)存數(shù)量 ); 創(chuàng)建視圖: 圖書查詢視圖 create view bookview as select isbn,bookname,author,publish,retailprice from books; 3.4存儲(chǔ)過程和觸發(fā)器 主要存儲(chǔ)過程及觸發(fā)器: 用戶登錄的存儲(chǔ)過程 create or replace procedur

10、e denglu(flag out number,username varchar2,upwd number)登錄 as i varchar2(20); p number; begin flag:=0; select t.ename into i from scott.yonghu t where t.ename=username; if i is not null then flag:=1; select t.eno into p from scott.yonghu t where t.ename=username and t.eno=upwd; if upwd is not null th

11、en flag := 2;登錄成功 else flag := 1;密碼不正確 end if; else flag := 0;用戶不存在 end if; commit; exception when no_data_found then rollback; end; 入庫(kù)的存儲(chǔ)過程: create or replace procedure rk(isb varchar2,bname varchar2,rp varchar2,sl number)入庫(kù) as i number; begin select count(*) into i from inwarehouseitems where isbn

12、=isb; if(i0) then update inwarehouseitems set shuliang=shuliang+sl where isbn=isb; else insert into inwarehouseitems values(isb,bname,rp,sl); end if; end; 觸發(fā)器: create or replace trigger charu after insert or update on InWarehouseitems REFERENCING OLD AS OLD NEW AS NEW FOR EACH ROW declare n_count nu

13、mber(4); begin if updating or inserting THEN select count(*) into n_count from stock where ISBN = :new.ISBN; if n_count 0 then update stock set StockNum = StockNum + :NEW.shuliang where ISBN = :NEW.ISBN; else insert into stock(ISBN, StockNum) values(:NEW.ISBN, :NEW.shuliang); end if; end if; end; 第4

14、章詳細(xì)設(shè)計(jì)及測(cè)試4.1 系統(tǒng)界面 1.登入界面 圖4-1登入界面圖 2.圖書管理界面 圖4-2圖書管理界面圖3.入庫(kù)界面 圖4-3入庫(kù)界面圖4.庫(kù)存界面 圖4-4庫(kù)存界面圖 4.2 主要代碼設(shè)計(jì) 配置文件: ID=wsn;Password=1234;Unicode=True/ ll; 數(shù)據(jù)庫(kù)連接 class database static OracleConnection con = new OracleConnection(); public static OracleConnection GetOpen() try if (con.State = ConnectionState.Close

15、d) con.ConnectionString = ConfigurationSettings.AppSettingsConStr.ToString(); con.Open(); return con; catch (Exception ee) return null; public static void GetClose() if (con.State = ConnectionState.Open) con.Close(); 底層功能實(shí)現(xiàn): public DataTable ss() /查詢數(shù)據(jù)庫(kù)kucunview視圖,返回結(jié)果集存放在dt 中 try OracleDataAdapter

16、oda = new OracleDataAdapter(); string sql = select * from stock order by ISBN; OracleCommand cmd = new OracleCommand(sql, database.GetOpen(); oda.SelectCommand = cmd; oda.Fill(dt); return dt; catch (Exception eee) return null; finally database.GetClose(); public void se()/將dt里存放的結(jié)果顯示在listview中 listV

17、iew1.Items.Clear(); DataTable dt = ss(); foreach (DataRow dr in dt.Rows) ListViewItem item = new ListViewItem(dr0.ToString(); item.SubItems.Add(dr1.ToString(); this.listView1.Items.Add(item); dt.Clear(); 4.3 功能整體鏈接測(cè)試 總體測(cè)試是組裝軟件的系統(tǒng)技術(shù),本系統(tǒng)測(cè)試采用漸增集成測(cè)試,即測(cè)試單一功能,將測(cè)試完的功能加入系統(tǒng)中,進(jìn)行一次系統(tǒng)測(cè)試,依次類推將所有功能加入系統(tǒng)中,在具體測(cè)試時(shí),采用

18、自頂向下的結(jié)合方式,從主控功能開始,沿各控制層向下移動(dòng),逐漸把所有功能結(jié)合了。 在測(cè)試過程中使用到調(diào)試技術(shù): 1、采用debug調(diào)試語(yǔ)句,跟蹤數(shù)據(jù); 2、嵌入打印語(yǔ)句,輸出中間結(jié)果; 3、設(shè)置斷點(diǎn),觀察程序在斷點(diǎn)附近的狀況。 評(píng)估運(yùn)行的可靠性問題: 1、結(jié)果正確; 2、運(yùn)行速度; 3、空間利用率; 4、算法的可行性。 測(cè)試時(shí)發(fā)現(xiàn)問題及時(shí)修正,如沒有問題,則設(shè)計(jì)完成。 第5章課程設(shè)計(jì)心得 經(jīng)過一個(gè)星期的設(shè)計(jì)和開發(fā),對(duì)圖書管理系統(tǒng)基本開發(fā)完畢。圖書管理系統(tǒng)需求包括注冊(cè)、管理員、用戶信息、圖書信息、借閱信息進(jìn)行創(chuàng)建。通過不斷地對(duì)程序及各模塊進(jìn)行修改、編譯、調(diào)試、運(yùn)行。以及應(yīng)用了Oracle 11g語(yǔ)言,對(duì)數(shù)據(jù)庫(kù)的創(chuàng)建、修改、刪除,我深刻意識(shí)到設(shè)計(jì)的系統(tǒng)必須得經(jīng)過系統(tǒng)調(diào)研、需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)、系統(tǒng)調(diào)試、維護(hù)以及系統(tǒng)評(píng)價(jià)的一般過程。才能做好符合市場(chǎng)需求的系統(tǒng)。 很多時(shí)候感覺后面的設(shè)計(jì)根本無法繼續(xù),感覺像是被前面做的各種圖限制了。但是不管做什么,我們都要相信自己,不能畏懼,不能怕遇到困難,什么都需要去嘗試,有些你開始認(rèn)為很難的事在你嘗試之后你可能會(huì)發(fā)現(xiàn)原來它并沒有你以前覺得的

溫馨提示

  • 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. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論