【正文】
, MyConnection) Try () Catch c As Exception 。 amp。 WHERE SN = 39。 myStatus amp。, MyConnection) Try () Catch c As Exception MsgBox() End Try () () End Sub Sub updateBookStatus() Dim myStatus As String myStatus = OK () MyCommand = New OleDbCommand(UPDATE BookDetails SET BookStatus =39。 amp。 WHERE ReaderNo = 39。 CurrentIssueTagUsed amp。,IssueTagUsed = 39。 CurrentIssueTag amp。, MyConnection) Try MyReader = () While = MyReader(IssueNo) End While Catch c As Exception MsgBox() End Try () () () If = Then Return True Else If Then Return False End If End If End Function Sub updateReaderIssueTag() Dim CurrentIssueTag As String Dim CurrentIssueTagUsed As String Dim itag As Integer Dim itagused As Integer 34 CurrentIssueTag = getCurrentReaderIssueTag() CurrentIssueTagUsed = getCurrentReaderTagUsed() itag = CInt(CurrentIssueTag) itagused = CInt(CurrentIssueTagUsed) itag = itag + 1 itagused = itagused 1 CurrentIssueTag = CurrentIssueTagUsed = () MyCommand = New OleDbCommand(UPDATE ReaderDetails SET IssueTag =39。 amp。, MyConnection) MyReader = () 33 While = MyReader(SN) = MyReader(BookName) = MyReader(AuthorName) = MyReader(ReaderNo) = MyReader(ReaderName) = MyReader(idate) = MyReader(ddate) = MyReader(itype) End While () () () End Sub Function checkIfAlreadyExists() As Boolean () MyCommand = New OleDbCommand(SELECT * FROM IssueBook WHERE IssueNo =39。 amp。, MyConnection) MyReader = () While oTag = MyReader(IssueTagUsed) End While () () () If oTag = 3 Then Return False Else If oTag 3 Then Return True End If End If End Function ( 4) 要實現(xiàn)圖書歸還管理 模塊應首先點擊 書籍信息管理 主菜單如下 : 然后單擊還書管理,其窗體如下: 32 窗口如下: 代碼如下: Private Sub BtnReturn_Click(ByVal sender As , ByVal e As ) Handles updateReaderIssueTag() updateBookStatus() MsgBox(成功歸還書籍 , , 圖書館管理系統(tǒng) ) clearFields() End Sub Dim strChar As String strChar = Select Case strChar Case ChrW() If = Or checkIfAlreadyExists() = False Then MsgBox(請輸入有效的借閱號 , , 圖書館管理系統(tǒng) ) Else If And checkIfAlreadyExists() = True Then loadIssuedBook() () End If End If Case Else End Select End Sub Sub loadIssuedBook() () MyCommand = New OleDbCommand(SELECT * FROM IssueBook WHERE IssueNo =39。 amp。, MyConnection) MyReader = () While 31 oStatus = MyReader(BookStatus) End While () () () If oStatus = 正常 Then Return True Else If oStatus = 被借 Then Return False End If End If End Function Function checkIssueTag() As Boolean Dim oTag As String () MyCommand = New OleDbCommand(SELECT * FROM ReaderDetails WHERE ReaderNo =39。 amp。, MyConnection) MyReader = () While myTag = MyReader(IssueTagUsed) End While () () () Return myTag End Function Function checkStatus() As Boolean Dim oStatus As String () MyCommand = New OleDbCommand(SELECT * FROM BookDetails WHERE SN =39。 amp。, MyConnection) MyReader = () While myTag = MyReader(IssueTag) End While () () () Return myTag End Function Function getCurrentReaderTagUsed() As String Dim myTag As String () MyCommand = New OleDbCommand(SELECT * FROM ReaderDetails WHERE ReaderNo = 39。 amp。, MyConnection) Try () Catch c As Exception MsgBox() End Try () () End Sub Function getCurrentReaderIssueTag() As String Dim myTag As String () MyCommand = New OleDbCommand(SELECT * FROM ReaderDetails WHERE ReaderNo = 39。 amp。 WHERE SN = 39。 myStatus amp。, MyConnection) Try () Catch c As Exception MsgBox() End Try () () End Sub Sub updateBookStatus() Dim myStatus As String myStatus = 被借 () 30 MyCommand = New OleDbCommand(UPDATE BookDetails SET BookStatus =39。 amp。 WHERE ReaderNo = 39。 CurrentIssueTagUsed amp。,IssueTagUsed = 39。 CurrentIssueTag amp。 代碼如下: Private Sub BtnIssue_Click(ByVal sender As , ByVal e As ) Handles If checkStatus() = False Then MsgBox(該書已被借閱 , 請重 新選擇 !, , 圖書館管理系統(tǒng) ) 29 Else If checkIssueTag() = False Then MsgBox(已超過最大借書量 !, , 圖書館管理系統(tǒng) ) Else If checkStatus() = True And checkIssueTag() = True Then Try issueBook() upd