Heim >Datenbank >MySQL-Tutorial >Wie kann der Fehler „Parametrisierte Abfrage erwartet Parameter, der nicht bereitgestellt wurde' behoben werden?
Fehlerbehebung „Parametrisierte Abfrage erwartet Parameter, der nicht bereitgestellt wurde“-Fehler
Beim Ausführen einer parametrisierten Abfrage in Ihrem Code ist ein Fehler aufgetreten dass ein Parameter nicht angegeben wurde. Um dieses Problem zu beheben, untersuchen wir den Code und wenden einen Fix an.
Im bereitgestellten Codeausschnitt wird eine parametrisierte Abfrage verwendet, um Datensätze aus einer Datenbank basierend auf einem Suchparameter aus TextBox2 abzurufen. Die Fehlermeldung deutet jedoch darauf hin, dass der Parameter „@Parameter1“ nicht bereitgestellt wird. Um dies zu beheben, müssen wir den Parametern in der „Parameters“-Sammlung des Befehlsobjekts explizit Werte hinzufügen und ihnen Werte zuweisen.
Die folgende Codeänderung behebt dieses Problem:
Dim cmd As New SqlCommand cmd.CommandText = "SELECT * FROM borrow WHERE Department LIKE '%' + @Department + '%'" cmd.Connection = con cmd.CommandType = CommandType.Text cmd.Parameters.Add("@Department", SqlDbType.VarChar) If Not TextBox2.Text Is Nothing Then cmd.Parameters("@Department").Value = TextBox2.Text Else cmd.Parameters("@Department").Value = DBNull.Value End If con.Open()
In Mit diesem geänderten Code:
DBNull.Value wird verwendet, um Nullwerte in Datenbankoperationen darzustellen. Durch das Hinzufügen dieser Prüfung stellen wir sicher, dass die Abfrage auch dann korrekt ausgeführt wird, wenn die Sucheingabe leer oder null ist.
Das obige ist der detaillierte Inhalt vonWie kann der Fehler „Parametrisierte Abfrage erwartet Parameter, der nicht bereitgestellt wurde' behoben werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!