Я пишу динамический запрос для поискового вызова. ниже - последняя часть исполняемого запроса, и когда я печатаю его и запускаю в другом окне, он отлично работает. но когда я использую exec, он показывает красную кривую для литья деталей (CAST (@pint_StartRowIndex AS VARCHAR)), как показано в прикрепленном изображении.Динамический SQL-запрос Проблема - SQL Server
может ли кто-нибудь сказать мне, почему я получаю эту ошибку? Если я использую Печать вместо Exec не дает ошибок и печатный запрос выполняется без ошибок.
Создайте свою команду, а затем передать его в EXEC, то есть 'объявить @sqlcommand NVARCHAR (max), установите @sqlcommand = 'this' + that; exec (@sqlcommand) ' – artm
@artm Я сделал это на первом месте. Но там будут дополнительные условия для запроса. в этом случае я использовал минимальные условия. поскольку я знаю, что varchar (max) может содержать только 8000 символов. я сомневаюсь, что с дополнительными условиями этот предел может превысить. Вот почему я попытался выполнить, как указано выше – user2837480