解析圖書管理系統資料庫課程設計報告書

2021-03-14 11:41:55 字數 5059 閱讀 2285

**號碼 c(11)

家庭住址 c(20)

**日期 d

退證日期 d

2) 圖書登記表——booker.dbf。

圖書編號 c(8)

圖書名稱 c(30)

作者 c(8)

出版社 c(30)

圖書類別 c(8)

圖書** n(5,1)

內容提要 m

庫存數量 i

在庫數量 i

3) 圖書型別表——typer.dbf

圖書類別 c(8)

4) 借書登記表——brower.dbf

借書證編號 c(8)

圖書編號 c(8)

借閱日期 d

歸還日期 d

5) 借書檢視——brower

為了列印催還通知書單的需要,設計了乙個借書視**件,該檢視從

reader.dbf等3個表中提取了7個字段的資料:

reader.借書證編號

reader.姓名

reader.**號碼

brower.圖書編號

brower.借閱日期

booker.圖書名稱

booker.作者

其檢視關係可由以下sql語句定義:

select reader.借書證編號, reader.姓名, reader.**號碼, brower.圖書編號,;

brower.借閱日期,booker.圖書名稱,booker.作者;

from book!reader inner join book!brower;

inner join book!booker;

on brower.圖書編號=booker.圖書編號

on reader. 借書證編號= brower. 借書證編號;

where brower.借閱日期and data()-brower.歸還日期=0;

order by reader.借書證編號

3、總體模組設計:

該系統的全部功能由乙個主控介面(兩個表單)、乙個報表以及相關的四個表單組成,其總體模組框圖如下:

五、模組設計:

1、歡迎介面和主控介面表單的設計:

圖書館資訊管理系統的主介面由「歡迎表單」和「主控表單」組成,主控表單上安排六個命令按鈕,分別實現總體框圖中的五部分功能和退出系統模組。每個命令按鈕觸發的結果均執行一條命令,執行乙個表單,或啟動乙個報表檔案的執行,或者退回到visual foxpro系統狀態。

歡迎表單標籤的caption屬性為「歡迎使用河南理工大學圖書管理系統!」,並設定「進入」和「退出」兩個按鈕,通過「進入」按鈕(設計**為:do form 主控表單.

scx)進入主控介面,通過「退出」按鈕退出系統。

主控表單的設計**如下:

「借書證管理」按鈕的click事件**:do form 借書證管理.scx

「借書登記」按鈕的click事件**:do form借書登記.scx

「還書登記」 按鈕的click事件**:do form還書登記.scx

「圖書入庫與報廢」 按鈕的click事件**:do form圖書入庫與報廢.scx

「催還書通知」 按鈕的click事件**:report form催還書通知.frx

「退出系統」按鈕的click事件**:

release thisform

close all

quit

2、其他表單的設計:

1)借書證管理表單設計:

此表單的資料來源是reader.dbf表,在其支援下完成使用者要進行的圖書證的發放和退回工作。使用者從「借書證編號」文字框中輸入乙個借書證編號,如果該借書證在reader.

dbf表中已存在,系統會在下面的**物件中顯示與之對應的讀者情況,否則顯示為空。當單擊「辦理借書證」按鈕後,系統會在**中新增一行空記錄,等待使用者輸入新讀者的資料,並自動把**日期賦值為系統當前日期,使用者退出表單時系統將新資料存入與表單對應的reader.dbf表中;當使用者單擊「退還借書證」按鈕後,系統把當前日期賦值給換證日期字段,表述該讀者已歸還借書證。

與表單對應的各種物件的屬性值和事件**說明如下:

(1)「借書證編號」文字框的屬性值和事件**:

name屬性——text1

format屬性——『*********x』

interactivechange事件**:

thisform.dataenvironment.cursor1.filter='借書證編號='+""+trim(this.value)+""

thisform.refresh

return

lostfocus事件**:

thisform.dataenvironment.cursor1.filter='借書證編號='+""+trim(this.value)+""

thisform.refresh

return

(2)「辦理借書證」按鈕的click事件**:

append blank

replace 借書證編號 with thisform.text1.value,**日期 with date()

thisform.dataenvironment.cursor1.filter=』借書證編號=』+""+trim(thisform.text1.value)+""

thisform.refresh

return

(3)「退還借書證」按鈕的click事件**:

return

(4)「退出」按鈕的click事件**:

close all

thisform.release

其他表單的「退出」按鈕的**完全相同,以後不再進行說明。

2) 借書證登記表單的設計:

此表單是整個系統的乙個主要選單,共涉及到reader.dbf,booker.dbf,brower.

dbf,typer.dbf等四個表。使用者在左上角的組合框物件中選擇「借書證編號」,文字框中的「讀者姓名」與「**號碼」是系統自動顯示的。

在「選擇圖型別」組合框中選擇要借閱的圖型別,**中顯示圖書的庫存資訊,在單擊「借閱」按鈕後,系統自動進行借閱登記,表單下半部分顯示該讀者現在未歸還的圖書及借閱日期。

下面對有關物件的屬性及**進行說明:

(1) 資料環境。資料環境中包含了四個表,其中的cuosor物件與表的對應關係如下:

cuosor1—typer.dbf圖書型別表

cuosor2—booker.dbf圖書登記表

cuosor3—reader.dbf借書證登記表

cuosor4—brower.dbf借書登記表

(2)「借書證編號」組合框的屬性和事件**:

constrolsource屬性——reader.借書證編號

interactivechange**:

thisform.dataenvironment.cursor3.filter='借書證編號='+""+this.value+""

thisform.dataenvironment.cursor4.filter='借書證編號='+""+;

this.value+""+'and data()-brower.歸還日期=0'

thisform.refresh

lostfocus**:

thisform.dataenvironment.cursor3.filter='借書證編號='+""+this.value+""

thisform.dataenvironment.cursor4.filter='借書證編號='+""+;

this.value+""+'and data()-brower.歸還日期=0'

thisform.refresh

(3)「圖書型別選擇」組合的屬性:

rowsource屬性——typer.圖書類別

(4)顯示姓名的文字框:

controlsource——reader.讀者姓名

(5)顯示**號碼的文字:

controlsource——reader.**號碼

(6)表單上半部分的**物件,由**物件生成器生成即可,該**物件以booker.dbf表為資料來源。

(7) 表單下半部分的**物件,由**物件生成器生成即可,該**物件以brower.dbf表為資料來源。

(8)「借書」按鈕的click事件**如下:

if booker.圖書編號=trim(

replace booker.在庫數量 with booker.在庫數量-1

endif

if used("brower")

select brower

go bottom

append blank

endif

if booker.圖書編號=trim(

replace brower.圖書編號 with booker.圖書編號

replace brower.借閱日期 with data()

endif

if used("reader")

select reader

replace brower.借書證編號 with reader.借書證編號

endif

thisform.refresh

return

3) 還書登記表單的設計:

該表單共涉及reader.dbf,brower.dbf和booker.

dbf等三個資料表,當使用者在借書證編號的組合框內選擇乙個借書證編號後,系統會自動在後面的文字框中現實與該編號對應的讀者姓名和聯絡**,並在**物件中顯示該讀者尚未歸還的書,然後由使用者在**中用滑鼠選擇其要歸還的書,選中後單擊「還書」按鈕。

有關物件的屬性及**說明如下:

(1)資料環境。該資料環境包含三個表,資料環境中cursor物件與表的對應關係是:

cursor1——reader.dbf

cursor2——brower.dbf

cursor3——booker.dbf

(2)「借書證編號」組合框的屬性和事件**:

rowsource屬性——reader.借書證編號

gotfocus事件**:

thisform.dataenvironment.cursor1.filter=""

資料庫課程設計報告圖書管理系統

資料庫課程設計報告 圖書館借閱系統 班級小組成員 指導教師 2010 年 1 月 8 日 目錄1 實驗目的 1 2 課程任務及需求 2 3 圖書館借書系統介紹 2 2.資料流程圖 3 2.3 資料字典6 3 概念結構設計11 4 邏輯結構設計12 5 物理結構設計12 6 系統主要查詢功能及sql查...

資料庫課程設計校園圖書管理系統

資料庫課程設計 校園圖書管理系統 班級 05非師 2 學號 050811240 姓名王志偉 指導教師 周忠眉 何田中 時間 07 年 11 月 1 日至 07 年 11 月20 日 一 系統應用背景 以前對圖書進銷 管理 借閱多採用人工文字筆記,不能及時了解庫存 借閱情況,且由於存書量大用人工出錯機...

圖書管理系統需求設計資料庫課程設計

用例圖 2.2功能需求 對於本系統需要實現以下基本功能。圖書管理員通過使用者登入介面,輸入使用者名稱和密碼驗證後可進入程式進行管理操作。圖書管理 圖書錄入 新增新增圖書的基本資訊。圖書下架 將已下架圖書的數量歸零。圖書查詢 輸入圖書名或圖書號可獲得當前圖書管該書的庫存量及該書的相關資訊。讀者管理 新...