Heim >Datenbank >MySQL-Tutorial >Wie kann der Fehler „Parametrisierte Abfrage erwartet Parameter, der nicht bereitgestellt wurde' behoben werden?

Wie kann der Fehler „Parametrisierte Abfrage erwartet Parameter, der nicht bereitgestellt wurde' behoben werden?

Linda Hamilton
Linda HamiltonOriginal
2024-12-30 00:13:52948Durchsuche

How to Fix the

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:

  • Fügen Sie dem Befehl einen Parameter mit dem Namen „@Department“ hinzu.
  • Überprüfen Sie, ob der Text in TextBox2 ist nicht null (um leere Sucheingaben zu verarbeiten).
  • Wenn der Text nicht null ist, weisen Sie dem Parameter den Wert von TextBox2 zu; Andernfalls weisen Sie DBNull.Value zu, um Nulleingaben zu verarbeiten.

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn