Я не могу найти какую-либо информацию об этом, несмотря на серьезные поиски.Если я пропустил предыдущий пост об этом, извините.
В любом случае, я спрашиваю мою базу данных (sql server 2008) о наборе, где в качестве параметра есть уникальный идентификатор.Однако, если входной параметр равен нулю, я хочу, чтобы все возвращали все сообщения.Я попытаюсь показать это в коде, возможно, легче понять суть таким образом:
select * from ongoing_tbl_ongoing where ongoingState like
case when @inParameter is null then
'%' --This is where things go haywire
else
@inParameter --This is a uniqueidentifier type (Guid)
end
or ongoingState is null
Но это с треском проваливается (преобразование не удалось при преобразовании строки символов в uniqueidentifier.)
Забавно то, что ... работает следующий код:
select * from ongoing_tbl_ongoing where ongoingState like '%'
Кажется, что предложение CASE вызывает приведение или каким-то другим способом удерживает меня от подстановочного поиска по уникальным идентификаторам.Любые указатели будут высоко оценены.Скажите, пожалуйста, если вам нужна дополнительная информация.
С наилучшими пожеланиями
-K