Ich habe erweiterte Suche nach das enthält combobox1, combobox2, combobox3 Ich suchte nach einer Möglichkeit, Suche in der Datenbank zu machen. Wenn ich combobox1 auswähle und nicht combobox2 und combobox3 auswähle und combobox2 und nicht combobox1 und combobox3 auch gleich in combobox3 auswähle und alle comboboxs auswähle habe ich keine Lösung gefunden, muss ich mehr als SqlCommand für jeden Fall machen? oder gibt es eine einfache Möglichkeit, dies zu tun, habe ich versucht, SqlCommandErweiterte Suche vb.net
Public Sub Load_Main(ByVal projectid As Integer, ByVal pdocid As Integer, ByVal depid As Integer)
main_Datatable.Clear()
Dim cmd As New SqlCommand("select * from main where [email protected] and [email protected] and [email protected]", DBConnection)
cmd.Parameters.Add("projectid", SqlDbType.Int).Value = projectid
cmd.Parameters.Add("pdocid", SqlDbType.Int).Value = pdocid
cmd.Parameters.Add("depid", SqlDbType.Int).Value = depid
DBConnection.Open()
main_Datatable.Load(cmd.ExecuteReader)
DBConnection.Close()
cmd = Nothing
End Sub
Load_Main(project_combo.SelectedValue, doc_combo.SelectedValue, Depart_combo.SelectedValue)
zu machen, aber wenn ich nicht die anderen Combobox ausgewählt haben nur eine funktioniert nicht
Erstellen Sie Ihre SQL-Anweisung, und fügen Sie Parameter nur für die Werte das sind nicht o (oder null). –
Verwenden Sie eine gespeicherte Prozedur, dann können Sie dynamische SQL oder Code-Verwendung verwenden, wenn Bedingungen zum Erstellen Ihrer SQL; wähle eins. – Codexer
Auch sollten Sie Ihre Befehle in Anweisungen verwenden, damit sie ordnungsgemäß entsorgt werden. – Codexer