Я считаю, что это довольно простой вопрос, но я ищу ответ «наилучшей практики».
Я устанавливаю вызов в C # .Net для хранимой процедуры Oracle. Хранимая процедура настроена на прием всех аргументов типа NUMBER. Поскольку Oracle позволяет установить эти значения в NULL, текущая хранимая процедура проверяет IS NOT NULL
. Довольно просто. Проблема в том, что .Net-код не может установить для поля int
значение DBNull.Value
, поэтому вместо него используется Int32.MinValue
. Это несоответствие вызывает проблемы для проверок хранимых процедур. Я попросил разработчика проверить 0
в хранимой процедуре, но мне интересно, есть ли лучший способ справиться с этим? Похоже, что он должен проверять как NULL
, так и 0
, поскольку концепция минимального значения не существует в Oracle. Это лучший способ справиться с этим?
Большое спасибо!