Как передать NULL или пустые строки во входной параметр хранимой процедуры с ADO и VB?

У меня есть хранимая процедура в Sql Server 2005 с входным параметром varchar, определяемым как:

@Value varchar(24) = NULL

в моем приложении VB6 я пытаюсь установить параметр с помощью функции ADO:

Set prmParamVal = cmdChkParam.CreateParameter(, adVarChar, adParamInput, Len(paramValue), paramValue)

Если значение, которое я пытаюсь передать, является пустой (нулевой длиной) строкой, я получаю следующую ошибку:

ADODB.Connection error '800a0e7c' Объект параметра неправильно определен. Непоследовательная или неполная информация была предоставлена.

Я попытался передать значение NULL вместо пустой строки, но это привело к другим ошибкам.

Как передать пустые строки или значения NULL в хранимую процедуру?

Я уже прочитал много статей и искал форумы (даже нашел свой вопрос несколько раз), но без правильного ответа.

Обходной путь для пустых строк состоит в том, чтобы установить длину = 1 или установить строку = "" (пробел). Но это не очень хорошо, и я бы предпочел отправить NULL. Я также экспериментировал с установкой paramValue для vbNull, Null, vbNullString или для установки prmParamVal.value = Empty без какой-либо удачи!

Ответы на вопрос(3)

Ваш ответ на вопрос