Я заинтересован в возврате пустого набора результатов из хранимых процедур SQL Server в определенных событиях.
Предполагаемое поведение заключается в том, что L2SQL DataContext.SPName().SingleOrDefault()
приведет к нулевому значению CLR.
В настоящее время я использую следующее решение, но я не уверен, будет ли это считаться плохой практикой, угрозой производительности (я не смог найти ее, прочитав план выполнения), или если есть просто лучший способ:
SELECT * FROM [dbo].[TableName]
WHERE 0 = 1;
План выполнения - это постоянное сканирование с тривиальной стоимостью, связанной с ним.
Причина, по которой я спрашиваю об этом, а не просто без каких-либо SELECT, связана с тем, что предыдущие инструкции SELECT @scalar или SELECT INTO могли привести к тому, что непреднамеренные результирующие наборы будут возвращены в L2SQL. Я ничего не переживаю?