powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / The undeclared parameter '@p' is used more than once in the batch being analyzed
3 сообщений из 3, страница 1 из 1
The undeclared parameter '@p' is used more than once in the batch being analyzed
    #40062075
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в БД хранятся запросы (в таблице)
делаю при вводе проверку запроса и получение списка полей

первые два запроса спокойно разбираются
на третьем валится ошибка сабж - ему не нравится, что один и тот же параметр встречается более одного раза

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
declare @p_sql_text nvarchar(1000) = 'select 1 id where @p = 1';
exec sp_describe_first_result_set @p_sql_text

declare @p_sql_text nvarchar(1000) = 'select 1 id where @p = 1 and @p1 = 1';
exec sp_describe_first_result_set @p_sql_text

declare @p_sql_text nvarchar(1000) = 'select 1 id where @p = 1 and @p = 1';
exec sp_describe_first_result_set @p_sql_text



на форумах предлагают эти переменные объявлять в тексте запроса - но текст запроса менять нежелательно, да и на момент ввода их может не быть
ЗЫ: переменные потом подвязываются на беке

mssql 2017
...
Рейтинг: 0 / 0
The undeclared parameter '@p' is used more than once in the batch being analyzed
    #40062089
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поведение документировано. Чтобы заработало, можно параметры передавать документированным же способом:

Код: sql
1.
2.
declare @p_sql_text nvarchar(1000) = 'select 1 id where @p = 1 and @p = 1';
exec sp_describe_first_result_set @p_sql_text, N'@p int'
...
Рейтинг: 0 / 0
The undeclared parameter '@p' is used more than once in the batch being analyzed
    #40062099
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриленко Сергей Алексеевич,

спасибо
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / The undeclared parameter '@p' is used more than once in the batch being analyzed
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]