ExecuteNonQuery выдает исключение Недопустимое использование параметра по умолчанию - PullRequest
0 голосов
/ 07 августа 2020

Когда я передаю Nothing в качестве параметра в vb. net в этот раз ExecuteNonQuery генерирует исключение. Это не позволяет мне вставлять нулевые значения

Dim id = Nothing Dim sqlStr = "insert into student where Id =?"

cmd.Parameters.AddawithValue ("?", Id) cmd .ExecuteNonQuery ()

1 Ответ

0 голосов
/ 07 августа 2020

Ваш пример немного вздор, учитывая, что в операторе INSERT нет предложения WHERE. Однако принцип остается:

Dim id As Integer?
Dim sql = "UPDATE Student SET Name = @Name WHERE Id = @Id"
Dim command As New OleDbCommand(sql, connection)

With command.Parameters
    .Add("@Name", OleDbType.VarChar, 50).Value = name
    .Add("@Id", OleDbType.Integer).Value = If(id.HasValue, id.Value, CObj(DBNull.Value))
End With
...