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

2021-03-04 08:10:37 字數 5061 閱讀 4528

圖書管理系統

一、背景資料:

1) 圖書館有各種圖書若干萬冊。

2) 每種圖書都有書名、圖書編號、作者(譯者)、出版社、定價和內容簡介。

3) 借書證記錄有借閱者的姓名、工作單位、住址、聯絡**等。

4) 憑藉書證借書,每次最多能借5本書,借書期限最長為60天。

二、系統功能需求:

1)圖書館借閱書籍於歸還書籍的登記。也就是為讀者建立乙個台賬,應用該台賬,工作人員能方便地掌握某位讀者借了哪些書,借了多長時間。

2)編著催還圖書通知單。圖書館對所借書籍的最長借閱時間限制為60天,對逾期未還的讀者下達催還圖書通知單,促其盡快還書,以加快圖書的流通。

3)提供快速的圖書查詢功能,方便讀者盡快插大所需要的書。

4)系統提供的全部功能要簡單、直觀、實用。

三、系統資料庫關係的e—r圖:

系統所涉及到的實體及關聯關係比較簡單,主要的實體只有讀者和圖書兩個,他們通過讀者的借閱活動而發生聯絡,其e—r圖如下:

四、系統設計:

1、功能設計:

1) 圖書借閱。為有借書證的讀者辦理借閱登記,登記的內容包括借書證編號、圖書編號、借閱日期。

2)圖書歸還。在適當位置登記,這個適當位置應該由借書證編號和圖書編號決定。

3)編制催還圖書通知單。對借閱圖書超過60天者列印催還圖書通知單,其內容包括借書證編號、讀者姓名、**號碼、圖書編號、名稱、作者、出版社、借閱日期等資訊。

4)借書證辦理與退還。本系統只提供對借書證發放(辦理)和**(退還)兩個過程的支援。

5)圖書入庫預報廢。新採購書的入庫登記和廢舊圖書的報廢登記。對於新書入庫有兩種不同的情況:其一是新採購的圖書在以前登記過,這次屬於補充庫存;

其二是圖書館以前沒有登記過。

2、資料庫設計:

根據e—r圖,將其轉化為如下資料實體,資料庫:book.dbc,包括如下的表和檢視:

1) 借書證發放登記表——reader.dbf。

借書證編號 c(8)

讀者姓名 c(8)

工作單位 c(30)

**號碼 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表為資料來源。

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

資料庫課程設計報告 圖書館借閱系統 班級小組成員 指導教師 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 日 一 系統應用背景 以前對圖書進銷 管理 借閱多採用人工文字筆記,不能及時了解庫存 借閱情況,且由於存書量大用人工出錯機...

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

目錄第一章緒論 3 1.1 課題背景 3 1.2 圖書管理系統分析 3 1.4 可行性分析 4 1.5 開發設計思想 4 第二章系統目標和原則 5 2.1 系統設計目標 5 2.2 系統設計原則 5 第三章設計規劃 6 3.1 設計思路概要 6 3.2 軟體支撐環境及開發工具 6 第四章需求分析 7...