2016-01-14 1 views
0

Я немного проблема, я ревалоризировать переменную таким образом:Как использовать столбец значений mysql по умолчанию?

Dim hash As String = "" 

If hashes.SelectedValue IsNot Nothing Then 

    hash = hashes.SelectedValue 

End If 

моя структура таблицы:

`resources_guid` char(36) DEFAULT '00000000-0000-0000-0000-000000000000', 

, когда я выполняю вставку с MySqlCommand и переменная пуста, я получаю «NULL» вместо значения по умолчанию, я также попытался установить только Dim hash As String, но значение по умолчанию не используется. Зачем?

ответ

1

Чтение между строками, вы создаете команду вставки, передавая hash в качестве значения для вашего столбца resources_guid?

Если вы указали любое значение, значение равно null, которое будет использоваться вместо значения по умолчанию. Чтобы использовать значение по умолчанию, вам не нужно указывать этот параметр/столбец на объект MySqlCommandна всех.

+0

Да в этом столбце я выполняю вставку, передающую этот параметр: MyCommand.Parameters.AddWithValue ("@ resources_guidp", hash); теперь, если hash равен NULL, поэтому не оценивается значение DEFAULT, которое должно быть использовано. –

+2

Но 'NULL' является допустимым значением, поэтому оно будет использоваться. Единственный способ заставить механизм БД использовать его по умолчанию - это не давать значение вообще. –