パラメータにnull値を渡すと、パラメータを追加した後でもこのエラーが発生します。値を確認し、nullの場合は、DBNull.Value
を使用してください。これは機能します
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
これにより、null値がオブジェクトレイヤーからデータベースに受け入れられるDBNull値に変換されます。