Есть ли предел для количества строк, которые можно передавать в хранимую процедуру SQL Server в параметре с таблицей?C#

Место общения программистов C#
Ответить
Anonymous
 Есть ли предел для количества строк, которые можно передавать в хранимую процедуру SQL Server в параметре с таблицей?

Сообщение Anonymous »

Я использую SQL Server 2019. < /p>
По какой-то причине при попытке передать список из 10000 идентификаторов SQL Server с веб-сервера C# в качестве табличного параметра, Только часть идентификаторов (~ 7000) в конечном итоге отправлена ​​на сервер (подтвержден с помощью трассировки). < /p>
- это известная проблема или есть конфигурации, которые я могу установить, чтобы убедиться, что все Значения передаются? < /p>
Я создал следующий тип в SQL Server: < /p>

Код: Выделить всё

CREATE TYPE [dbo].[IntList] AS TABLE([ID] [int] NULL)
< /code>
Тогда у меня есть хранящаяся процедура, которая принимает тип как параметр: < /p>
CREATE PROCEDURE [dbo].[spStackOverflowQuestionExample]
@Ids dbo.IntList READONLY,
< /code>
C# код сервера: параметр создается следующим образом: < /p>
var dt = new DataTable();
dt.Columns.Add("Id", typeof(int));

foreach (var id in ids)
{
dt.Rows.Add(id);
}

parameters.Add(new SqlParameter { ParameterName = "@Ids", Value = dt, SqlDbType = SqlDbType.Structured });
Параметр затем добавляется в команду и выполняется с помощью executeReaderasync .
Я прочитал онлайн, что людям удалось пройти Большая таблица оценки параметров для хранимых процедур:
https://www.dbdelta.com/sql-server-tvp- ... as/образно Есть ли другие способы сделать это? /п>

Подробнее здесь: https://stackoverflow.com/questions/793 ... tored-proc
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»