【正文】
End Sub Private Sub add_back_book_Click() End Sub Private Sub add_book_info_Click() End Sub Private Sub add_book_style_Click() End Sub 33 Private Sub add_lend_book_Click() End Sub Private Sub add_reader_info_Click() End Sub Private Sub add_reader_style_Click() End Sub Private Sub change_pwd_Click() End Sub Private Sub del_book_info_Click() End Sub Private Sub del_book_style_Click() End Sub Private Sub del_reader_info_Click() End Sub Private Sub del_reader_style_Click() End Sub Private Sub exit_sys_Click() End End Sub Private Sub find_book_info_Click() End Sub Private Sub find_lend_book_Click() End Sub 34 Private Sub find_reader_info_Click() End Sub Private Sub gu_Click() End Sub Private Sub H_Click() End Sub Private Sub modify_book_info_Click() End Sub Private Sub modify_book_style_Click() End Sub Private Sub modify_reader_info_Click() End Sub Private Sub modify_reader_style_Click() End Sub 添加圖書(shū)信息: Private Sub Command1_Click() Dim rs_addbook As New Dim sql As String If Trim() = Then MsgBox 請(qǐng)選擇圖書(shū)種類(lèi) , vbOKOnly + vbExclamation, Exit Sub End If If Trim() = Then MsgBox 圖書(shū)編號(hào)不能為空 , vbOKOnly + vbExclamation, Exit Sub End If If Trim() = Then 35 MsgBox 書(shū)名不能為空 , vbOKOnly + vbExclamation, Exit Sub End If If Not IsDate() Then MsgBox 請(qǐng)按照 yyyymmdd 格式輸入日期 , vbOKOnly + vbExclamation, Exit Sub End If If Not IsDate() Then MsgBox 請(qǐng)按照 yyyymmdd 格式輸入日期 , vbOKOnly + vbExclamation, Exit Sub End If sql = select * from 書(shū)籍信息 where 書(shū)籍編號(hào) =? amp。同時(shí),也使我認(rèn)識(shí)到自己所學(xué)的知識(shí)還很膚淺,這也正是我今后要努力提高的。另外,合理的數(shù)據(jù)結(jié)構(gòu)將非常有利于程序的實(shí)現(xiàn)。前臺(tái)是應(yīng)用程序的開(kāi)發(fā):功能模塊設(shè)計(jì)、源代碼開(kāi)發(fā)。 6 用戶(hù)操作說(shuō)明 運(yùn)行環(huán)境說(shuō)明 軟硬件環(huán)境 硬件配置: 586以上檔次的計(jì)算機(jī),彩色顯示器, 操作方法 1.直接啟動(dòng)應(yīng)用系統(tǒng) 2.在登錄窗體中輸入用戶(hù)名及密碼就可以直接進(jìn)入主界面。 ? sql, conn, adOpenKeyset, adLockPessimistic If Then (0) = Trim() (1) = Trim() (2) = Trim() (3) = Trim() (4) = Trim() (5) = Trim() (6) = Trim() (7) = 否 MsgBox 添加書(shū)籍信息成功! , vbOKOnly, Else MsgBox 圖書(shū)編號(hào)重復(fù)! , vbOKOnly + vbExclamation, 30 = Exit Sub End If End Sub Private Sub Command2_Click() Unload Me End Sub Private Sub Form_Load() Dim rs_leibie As New Dim sql As String sql = select * from 圖書(shū)類(lèi)別 sql, conn, adOpenKeyset, adLockPessimistic Do While Not (0) Loop End Sub 5 調(diào)試與分析 系統(tǒng)集成 系統(tǒng)調(diào)試 1. 采用各模塊獨(dú)立調(diào)試,整體合成測(cè)試的方法 。 If Then (0) = Trim() (1) = Trim() MsgBox 添加圖書(shū)類(lèi)別成功! , vbOKOnly, Else 如果有重復(fù),則給出提示,然后將焦點(diǎn)設(shè)置給 TEXT1,并將所有的文本框清空,代碼如下。 Private Sub Command1_Click() 27 Dim rs_bookstyle As New Dim sql As String If Trim() = Then 使用 RECORDSET對(duì)象的 OPEN方法打開(kāi)數(shù)據(jù)表。 _ data source= connectionstring CNt = 0 23 End Sub 注意 :工程屬性對(duì)話(huà)框中的 ”啟動(dòng)選項(xiàng) ”用來(lái)選取擇運(yùn)行 VB時(shí)顯示的第一個(gè)窗體 ,或者 Sub Main. 主窗體中的代碼不多 ,基本上都是實(shí)現(xiàn)單擊某個(gè)菜單選項(xiàng)即彈出相應(yīng)窗體的語(yǔ)句 ,這些語(yǔ)句將分別在各個(gè)窗體中介紹。_ “data source=” connectionstring 21 ?? End Sub 注意 :當(dāng)程序不再使用數(shù)據(jù)庫(kù)時(shí) ,應(yīng)該調(diào)用 Connection 對(duì)象的 Close 方法將其關(guān)閉 ,但此時(shí) 它還會(huì)占用一定的系統(tǒng)資源 ,完全將資源釋放給系統(tǒng)的方法是使用下面的語(yǔ)句 : Set conn= ,這兩個(gè)步驟往往會(huì)被省略 ,因?yàn)楫?dāng)程序關(guān)閉時(shí) ,程序所打開(kāi)的數(shù)據(jù)也會(huì)隨之關(guān)閉 ,Connection對(duì)象所占用的系統(tǒng)資源也會(huì)自動(dòng)釋放給系統(tǒng) . 登錄窗體的實(shí)現(xiàn) 其代碼如下: Option Explicit Dim CNt As Integer ?記錄確定次數(shù) 程序裝載的過(guò)程中將此變量初始化為 0 Dim sql As String Dim rs_login As New If Trim() = Then ?判斷輸入的用戶(hù)名是否為空 MsgBox 沒(méi)有這個(gè)用戶(hù) , vbOKOnly + vbExclamation, Else sql = select * from 系統(tǒng)管理 where 用戶(hù)名 =? amp。在打開(kāi)數(shù)據(jù)表之前應(yīng)該先打開(kāi)數(shù)據(jù)庫(kù),使用公共模塊中定義的 conn 對(duì)象。 3. 數(shù)據(jù)庫(kù)性能的監(jiān)督、分析和改造 利用 Microsoft SQL Server2021 提供的檢 測(cè)系統(tǒng)性能參數(shù)的工具,在數(shù)據(jù)庫(kù)運(yùn)行過(guò)程中,監(jiān)督數(shù)據(jù)進(jìn)行分析,找出改進(jìn)系統(tǒng)性能的方法,并做適當(dāng)調(diào)整。 2. 數(shù)據(jù)庫(kù)的安全性、完整性控制 在數(shù)據(jù)庫(kù)運(yùn)行過(guò)程中由于應(yīng)用環(huán)境的變化,對(duì)安全性的要求也會(huì)發(fā)生變化,如原來(lái)機(jī)密的數(shù)據(jù)現(xiàn)在可以公開(kāi)查詢(xún)了,新加入的數(shù)據(jù)又可能是機(jī)密的了。圖書(shū)管理信息系統(tǒng)數(shù)據(jù)庫(kù)中各個(gè)表格的設(shè)計(jì)結(jié)果如下面的幾個(gè)表格所示。 3)全局 ER模式的優(yōu)化 在得到全局 ER 模式后,為了提高數(shù)據(jù)庫(kù)系統(tǒng)的效率,還應(yīng)進(jìn)一步依據(jù)處理需求對(duì) E 17 R 模式進(jìn)行優(yōu)化。一般把同名實(shí)體類(lèi)型作為公共實(shí)體類(lèi)型的一類(lèi)候選,把具有相同鍵的實(shí)體類(lèi)型作為公共實(shí)體類(lèi)型的另一類(lèi)候選。 所有局部 ER 模式都設(shè)計(jì)好了后,接下來(lái)就是把它們綜合成單一的全局概念結(jié)構(gòu)。 ( 1) 設(shè)計(jì)局部 ER模式 1.讀者類(lèi)別表與讀者信息表之間的 ER圖: 2.讀者信息表與圖書(shū)信息表之間的 ER圖: 15 3.圖書(shū)類(lèi)別表與圖書(shū)信息表之間的 ER圖: 4.圖書(shū)信息表與借閱信息表之間的表之間的 ER圖: 16 5.讀者信息表與圖書(shū)類(lèi)別表之間的 ER圖: ER 模型的 “聯(lián)系 ”用于刻畫(huà)實(shí)體之間的關(guān)聯(lián)。 在概念設(shè)計(jì)階段中,設(shè)計(jì)人員從用戶(hù)的角度看待數(shù)據(jù)及處理要求和約束,產(chǎn)生一個(gè)反映用戶(hù)觀點(diǎn)的概念模式。合理的數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)可以提高數(shù)據(jù)存儲(chǔ)的效率,保證數(shù)據(jù)的完整和一致。 幫助部分:包括系統(tǒng)設(shè)計(jì)前臺(tái)和后臺(tái)簡(jiǎn)概述等功能。 12 ( 2)讀者類(lèi)別管理:包括讀者類(lèi)別的添加、讀者類(lèi)別的修改、讀者類(lèi)別的刪除 3部分功能。其中,還書(shū)信息與借閱信息部分明細(xì)相同。 借閱管理部分:包括借書(shū)管理和還書(shū)管理,其功能是實(shí)現(xiàn)對(duì)各部分?jǐn)?shù)據(jù)內(nèi)容的添加和查詢(xún)等操作。各管理部分的明細(xì)如下: ( 1)圖書(shū)信息管理:包括圖書(shū)信息的添加、圖書(shū)信息的修改、圖書(shū)信息的查詢(xún)