【正文】
4 Dim mBook_pubdate As New SqlParameter(Book_pubdate, , 4) Dim mBook_author As New SqlParameter(Book_author, , 50) 39。構建一個沒有參數(shù)的 sqlmand Private Overloads Function CreateCommand(ByVal sprocName As String) As SqlCommand Dim mand As SqlCommand = New SqlCommand(sprocName, Connection) = (New SqlParameter(Return Value, _ , _ 4, _ , _ False, _ 0, _ 0, _ , _ , _ Nothing)) Return mand End Function Public ReadOnly Property DSN() As String Get Return m_DSN End Get End Property Public Overloads Function RunSP(ByVal sprocName As String) As Int32 Dim result As Int32 () Dim mand As SqlCommand = (sprocName) () result = CType((Return Value).Value, Int32) () Return result End Function Public Overloads Function RunSP(ByVal sprocName As String, ByVal parameters() As IDataParameter) As Int32 Dim result As Int32 () Dim mand As SqlCommand = (sprocName, parameters) () result = CType((Return Value).Value, Int32) () Return result End Function Public Overloads Function RunSP(ByVal sprocName As String, _ ByVal parameters() As IDataParameter, ByVal DataSet As DataSet) As Int32 Dim result As Int32 Dim sqlDA As New SqlDataAdapter () = (sprocName, parameters) (DataSet, SourceTable) result = CType((Return Value).Value, Int32) () Return result End Function Public Overloads Function RunSP(ByVal sprocName As String, _ ByRef DataSet1 As DataSet) As Int32 Dim result As Int32 Dim sqlDA As New SqlDataAdapter () = (sprocName) (DataSet1) result = CType((Return Value).Value, Int32) () Return result End Function Public Overloads Function RunSP(ByVal sprocName As String, _ ByVal parameters() As IDataParameter, ByRef DataSet As DataSet, ByVal TableName As String) As Int32 Dim result As Int32 Dim sqlDA As New SqlDataAdapter () = (sprocName, parameters) (DataSet, TableName) result = CType((Return Value).Value, Int32) () Return result End Function Public Function Construct(ByVal ConstructString As String) m_DSN = ConstructString End Function Public Function Activate() Connection = New SqlConnection(m_DSN) End Function Public Function Deactivate() Connection = Nothing End Function Public Sub New() End Sub Public Sub New(ByVal ConstrucString As String) Construct(ConstrucString) () End Sub Protected Overrides Sub Finalize() () () End Sub End Class 圖書查詢窗體的全部代碼 Imports Imports Public Class frmBookQuery Inherits Region Windows 窗體設計器生成的代碼 ?此處略去 … End Region Private Sub frmBookQuery_Load(ByVal sender As , ByVal e As ) Handles With .Anchor = CType(((( Or ) _ Or ) _ Or ), ) .BackColor = .BackgroundColor = .CaptionVisible = False .HeaderForeColor = .ReadOnly = True End With BindComboBox1() = End Sub Function search() Dim As New (str) Dim cmd As New SqlCommand Dim da As SqlDataAdapter Dim ds As New DataSet With cmd If = True Then .CommandText = searchBook Else .CommandText = searchBookInlib End If .CommandType = .Connection = End With Dim mBook_code As New SqlParameter(Book_code, , 50) 39。 + Book_sort + 39。 + Book_author + 39。 + Book_isbn + 39。 + Book_pub + 39。 + Book_name + 39。 + Book_code + 39。, Book_sort nvarchar(50)=39。, Book_pubdate smalldatetime=39。, Book_pub nvarchar(50)=39。 RETURN /*檢索某圖書是哪位讀者借去的 */ ALTER PROCEDURE Book1IsBorrowByWho Book_code nvarchar(50) AS SELECT Au_id FROM borrow WHERE (book_code = Book_code) AND (Return_date IS NULL) RETURN /*檢索某圖書是否在館 */ /*檢索在館的圖書 只要圖書 id不在 借閱記錄沒有歸還的記錄 里 就表示在館 */ /*不在館 則返回 0 在館 返回 1 */ ALTER PROCEDURE Book1IsInLib Book_code nvarchar(50) AS SELECT COUNT(*) as IsInLib FROM book WHERE Book_code = Book_code AND Book_code IN (SELECT book_code FROM Book WHERE Book_code NOT IN (SELECT FROM borrow WHERE Return_date IS NULL)) RETURN /* 用于獲取一位讀者的 當前借閱書數(shù) , 總共借閱書數(shù) , 可借書數(shù) 最大借閱時間 輸入?yún)?shù) Au_id */ ALTER PROCEDURE Get1AuInfo Au_id nvarchar(50), /*1*/ BorrowNo int output, BorrowNoCurrent int output, MaxBorrowDays int output, MaxBorrowBooks int output AS begin transaction SELECT BorrowNo=COUNT(*) FROM borrow WHERE (Au_id = Au_id) SELECT BorrowNoCurrent=COUNT(*) FROM borrow WHERE (Au_id = Au_id) AND (Return_date IS NULL) SELECT MaxBorrowDays= , MaxBorrowBooks= FROM ausort INNER JOIN au ON = WHERE ( = Au_id) mit transaction RETURN /* 用于獲取一位讀者所有超期的借書列表 Au_id */ /*author:翟靖軒 */ ALTER PROCEDURE Select1AuMaxDateBookList Au_id nvarchar(50) /*1*/ AS SELECT AS 圖書條碼號 , AS 圖書題名 , AS 借閱日期 , AS 應還日期 FROM book INNER JOIN borrow ON = WHERE ( = Au_id) AND ( IS NULL) AND ( GETDATE()) ORDER BY DESC RETURN /*返回超期的所有讀者 */ /*author:翟靖軒 2020510*/ A