我想創建一個程序,它將根據名稱搜索動物。我目前有這個部分的工作,但我想添加一個可選的搜索,使用戶可以搜索特定的數據,如體重和組合框將顯示所有動物的結果具有匹配的重量,用戶可以然後選擇他想要的一個,它會打開我設計的表單,並顯示正確的數據。不幸的是,我對編程有一個非常基本的理解,所以任何幫助將非常感謝。用組合框搜索數據庫並顯示多個結果
這是我目前的代碼。主要的搜索功能可用,但可選的功能不可用。我被告知這是由於我編寫它的方式,因爲每一行sql都會自行替換,所以它只會以最後一個答案結束。
Private Sub btnsear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsear.Click
If (txtname.Text = "") Then
MsgBox("Invalid Search")
Else
Try
Dim newsql As String
newsql = "select * from Animals where AnimalName like " & "'%" & txtname.Text & "%'"
'MsgBox("select * from Animals where AnimalName like " & "'" & txtname.Text & "'")
'msgbox(newsql)
Dim con As New OleDb.OleDbConnection
Dim da As New OleDb.OleDbDataAdapter
' dim ds as NewDataTable
Dim dt As New DataTable("Animals")
' uses the 2010 compatible connection string
con.ConnectionString = "PROVIDER=Microsoft.ACE.OLEDB.12.0;Data Source = h:\Animals.accdb"
con.Open()
da = New OleDb.OleDbDataAdapter(newsql, con)
da.Fill(dt)
Form2.Show()
'show name in unbound text box
Form2.nametxt.Text = dt.Rows(0).Item(1)
Form2.latintxt.Text = dt.Rows(0).Item(2)
Form2.locationtxt.Text = dt.Rows(0).Item(3)
Form2.heighttxt.Text = dt.Rows(0).Item(4)
Form2.weighttxt.Text = dt.Rows(0).Item(5)
Form2.diettxt.Text = dt.Rows(0).Item(6)
Form2.statustxt.Text = dt.Rows(0).Item(7)
Form2.lifetxt.Text = dt.Rows(0).Item(8)
Form2.breedtxt.Text = dt.Rows(0).Item(9)
Form2.lengthtxt.Text = dt.Rows(0).Item(10)
Form2.txtimage.Text = dt.Rows(0).Item(11)
Catch
MsgBox("Item Not Found")
'con.close()
End Try
End If
If (txtopt.Text = "'") Then
Try
Dim sql1 As String
Dim sql2 As String
Dim sql3 As String
Dim sql4 As String
Dim sql5 As String
Dim sql6 As String
Dim sql7 As String
Dim sql8 As String
Dim sql9 As String
Dim sql10 As String
sql1 = "select * from Animals where AnimalName like " & "'%" & txtopt.Text & "%'"
sql2 = "select * from Animals where LatinName like " & "'%" & txtopt.Text & "%'"
sql3 = "select * from Animals where Location like " & "'%" & txtopt.Text & "%'"
sql4 = "select * from Animals where AverageHeight like " & "'%" & txtopt.Text & "%'"
sql5 = "select * from Animals where AverageWeight like " & "'%" & txtopt.Text & "%'"
sql6 = "select * from Animals where DietaryNeeds like " & "'%" & txtopt.Text & "%'"
sql7 = "select * from Animals where ConservationStatus like " & "'%" & txtopt.Text & "%'"
sql8 = "select * from Animals where AverageLifeSpan like " & "'%" & txtopt.Text & "%'"
sql9 = "select * from Animals where BreedingSeason like " & "'%" & txtopt.Text & "%'"
sql10 = "select * from Animals where AverageLength like " & "'%" & txtopt.Text & "%'"
Catch
End Try
End If
End Sub
請加上使用的編程語言的正確標籤。 – Lokesh
完成,對不起,我忘了:D – Silver