sql >> Database >  >> RDS >> Sqlserver

De geparametriseerde query verwacht de parameter die niet is opgegeven

Als u de null-waarde doorgeeft aan de parameter, krijgt u deze fout zelfs nadat u de parameters hebt toegevoegd, dus probeer de waarde te controleren en als deze null is, gebruik dan DBNull.Value

Dit zal werken

cmd.Parameters.Add("@Department", SqlDbType.VarChar)

If (TextBox2.Text = Nothing) Then
    cmd.Parameters("@Department").Value = DBNull.Value
Else
    cmd.Parameters("@Department").Value = TextBox2.Text
End If

Dit converteert de null-waarden van de objectlaag naar DBNull-waarden die acceptabel zijn voor de database.



  1. Fix "ERROR 3942 (HY000):elke rij van een VALUES-clausule moet ten minste één kolom hebben" bij gebruik van de VALUES-instructie in MySQL

  2. Een externe MySQL-databaseverbinding instellen

  3. SQL-code programmatisch genereren

  4. Meerdere (3+) tabellen samenvoegen in één verklaring