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.