Hallo zusammen,
ich habe eine Funktion geschrieben mit der ich eine Suche in einer MySQL Tabelle ausführen möchte. Es wird auch etwas ausgeführt aber nicht das was ich möchte. Die SQL-Syntax schein auch richtig zu sein, da ich ja keinen Fehler bekomme.
Ich möchte gerne das in der ganzen Tabelle nach dem was in der Variable Suchbegriff steht suchen. Damit auch Sachen gefunden werden, die mitten im Wort stehen habe ich noch "*" vor und nach dem Suchbegriff geschrieben. Fakt ist aber das Ihrgend was anderes gesucht wird, ich aber nicht weiß was. Die Summe der Datensätze verringert sich auf jeden fall.
Hier mal die Funktion:
Kann mir einer helfen wo der Fehler steckt?? Das was in den Variablen steht sollte stimmen. Als Beispiel steht in s_Suchbegriff "*taster*"
ich habe eine Funktion geschrieben mit der ich eine Suche in einer MySQL Tabelle ausführen möchte. Es wird auch etwas ausgeführt aber nicht das was ich möchte. Die SQL-Syntax schein auch richtig zu sein, da ich ja keinen Fehler bekomme.
Ich möchte gerne das in der ganzen Tabelle nach dem was in der Variable Suchbegriff steht suchen. Damit auch Sachen gefunden werden, die mitten im Wort stehen habe ich noch "*" vor und nach dem Suchbegriff geschrieben. Fakt ist aber das Ihrgend was anderes gesucht wird, ich aber nicht weiß was. Die Summe der Datensätze verringert sich auf jeden fall.
Hier mal die Funktion:
VB.NET-Quellcode
- Private Function suchen() As DataTable
- 'Variablen für die Suche
- Dim s_Suchbegriff As String
- Dim s_Kostenstelle As String
- Dim s_Herstellername As String
- Dim s_Kategorie As String
- Dim s_Abteilung As String
- 'Variablen Werte zuordnen
- If TextBox_Suchbegriff.Text = "" Then
- s_Suchbegriff = "*"
- Else
- s_Suchbegriff = "*" & TextBox_Suchbegriff.Text & "*"
- End If
- '***********************************************
- If ComboBox_Kostenstelle.Text = "" Then
- s_Kostenstelle = "*"
- Else
- s_Kostenstelle = "*" & ComboBox_Kostenstelle.Text & "*"
- End If
- '***********************************************
- If ComboBox_Herstellername.Text = "" Then
- s_Herstellername = "*"
- Else
- s_Herstellername = ComboBox_Herstellername.Text
- End If
- '***********************************************
- If ComboBox_Kategorie.Text = "" Then
- s_Kategorie = "*"
- Else
- s_Kategorie = ComboBox_Kategorie.Text
- End If
- '***********************************************
- If ComboBox_Abteilung.Text = "" Then
- s_Abteilung = "*"
- Else
- s_Abteilung = ComboBox_Abteilung.Text
- End If
- '#################################################################################
- Dim conn As MySqlConnection = verbinden()
- Dim myAdapter As New MySqlDataAdapter
- Dim SQLAbfrage As String = "SELECT Typ, Bezeichnung, Herstellerbestellnummer, Herstellername, Kategorie, Abteilung, Kostenstelle FROM " _
- & "" & sPraefix & "_artikel WHERE Typ or Bezeichnung='" + Replace(s_Suchbegriff, " ", "") + "'" _
- & "AND Kategorie='" + Replace(s_Kategorie, " ", "") + "' AND Abteilung='" + Replace(s_Abteilung, " ", "") + "'" _
- & "AND Herstellername='" + Replace(s_Herstellername, " ", "") + "' AND Kostenstelle='" & Replace(s_Kostenstelle, " ", "") & "'" _
- & "order by Bezeichnung"
- Dim myCommand As New MySqlCommand
- Dim myData As New DataTable
- myCommand.Connection = conn
- myCommand.CommandText = SQLAbfrage
- myData.Reset()
- myCommand.Connection = conn
- myCommand.CommandText = SQLAbfrage
- myAdapter.SelectCommand = myCommand
- myAdapter.Fill(myData)
- Return myData
- conn.Close()
- End Function
Kann mir einer helfen wo der Fehler steckt?? Das was in den Variablen steht sollte stimmen. Als Beispiel steht in s_Suchbegriff "*taster*"