【正文】
() End Sub Private Sub btnCancel_Click(ByVal sender As , ByVal e As ) Handles (objLib讀者信息, 讀者信息).CancelCurrentEdit() () End Sub Private Sub btnDelete_Click(ByVal sender As , ByVal e As ) Handles If ((objLib讀者信息, 讀者信息).Count 0) Then (objLib讀者信息, 讀者信息).RemoveAt _ ((objLib讀者信息, 讀者信息).Position) End If () End Sub Private Sub btnLast_Click(ByVal sender As , ByVal e As ) Handles (objLib讀者信息, 讀者信息).Position = _ ((objLib讀者信息, 讀者信息).Count 1) () End Sub Private Sub btnNavPrev_Click(ByVal sender As , ByVal e As ) Handles (objLib讀者信息, 讀者信息).Position = _ ((objLib讀者信息, 讀者信息).Position 1) () End Sub Private Sub btnNavNext_Click(ByVal sender As , ByVal e As ) Handles (objLib讀者信息, 讀者信息).Position = _ ((objLib讀者信息, 讀者信息).Position + 1) () End Sub Private Sub btnCancelAll_Click(ByVal sender As , ByVal e As ) Handles () End SubEnd Class**鑒于“讀者信息”,“管理者信息”,“出版社信息”,“書籍信息”,“借閱信息”模塊除連接數(shù)據(jù)源不同外,設(shè)計(jì)思路步驟均相同,此處省略“管理者信息”,“出版社信息”,“書籍信息”,“借閱信息”四個(gè)模塊的代碼。(略)(略)(略)(略):Public Class 綜合查詢 Inherits Region Windows 窗體設(shè)計(jì)器生成的代碼 ‘此處省略窗體設(shè)計(jì)代碼End Region Sub QueryData(ByVal SqlString As String, ByVal OrderString As String) QueryString = SqlString If OrderString Then QueryString = SqlString + ORDER BY + OrderString End If End Sub Public Sub LoadDataSet() Dim objDataSetTemp As objDataSetTemp = New Try (objDataSetTemp) Catch eFillDataSet As Throw eFillDataSet End Try Try () (objDataSetTemp) Catch eLoadMerge As Throw eLoadMerge End Try End Sub Public Sub FillDataSet(ByVal dataSet As ) = False Try If Then () End If () (dataSet) (dataSet) (dataSet) (dataSet) (dataSet) Catch fillException As Throw fillException Finally = True () End Try End Sub Dim DataType(100) As String 39。該數(shù)組用來存儲(chǔ)字段的數(shù)據(jù)類型 Dim SqlString As String Dim OrderString As String Dim QueryString As String 39。這三個(gè)字符串變量用來存儲(chǔ)查詢語句 39。SqlString變量用來存儲(chǔ)查詢語句中除了ORDER BY子句之外的部分 39。OrderString變量用來存儲(chǔ)ORDER BY子句 39。QueryString變量存儲(chǔ)查詢語句 Private Sub 綜合查詢_Load(ByVal sender As , ByVal e As ) Handles 39。初始化列表“cmbBox查詢表” (讀者信息) (管理者信息) (借閱信息) (書籍信息) (出版社信息) = 0 39。將列表的第一項(xiàng)設(shè)為選中項(xiàng) End Sub Private Sub cmbBox查詢表_SelectedIndexChanged(ByVal sender As , ByVal e As ) Handles 39。在“cmbBox查詢表”中選擇一項(xiàng)作為查詢表 39。則在“cmbBox查詢依據(jù)”“cmbBox排序依據(jù)”將自動(dòng)填充 39。查詢表中的所有字段 39。保持?jǐn)?shù)據(jù)表與字段二者的一致性 Dim str_Table As String str_Table = If str_Table = Then Return () () Dim mySelectQuery As String = SELECT * FROM + str_Table Dim myCommand As New (mySelectQuery, ) If = Then () End If Dim myReader As myReader = Dim i As Integer For i = 0 To 1 DataType(i) = (i).Name ((i).ToString) ((i).ToString) Next () = 0 = 0 End Sub Private Sub btn執(zhí)行查詢_Click(ByVal sender As , ByVal e As ) Handles If DataType() = Int32 Then SqlString = SELECT * FROM + + WHERE SqlString = SqlString + + + _ + + ( + + ) ElseIf DataType() = String Then SqlString = SELECT * FROM + + WHERE SqlString = SqlString + + + _ + + 39。 + + 39。 ElseIf DataType() = Date Then SqlString = SELECT * FROM + + WHERE SqlString = SqlString + + + _ + Cdate( + + ) End If OrderString = QueryData(SqlString, OrderString) If = 讀者信息 Then = QueryString End If If = 管理者信息 Then = QueryString End If If = 借閱信息 Then = QueryString End If If = 書籍信息 Then = QueryString End If If = 出版社信息 Then = QueryString End If Try () 39。嘗試加載數(shù)據(jù)集 = Catch eLoad As () End Try End SubEnd Class