Використовувати параметри, що оцінюються таблицею (механізм бази даних) - SQL Server Microsoft Docs

СТОСУЄТЬСЯ: SQL Server Azure База даних SQL Azure Synapse Analytics Паралельний склад даних

оцінюються

Параметри, що мають значення таблиці, оголошуються за допомогою визначених користувачем типів таблиць. Параметри, що мають значення таблиці, можна використовувати для надсилання декількох рядків даних до оператора Transact-SQL або підпрограми, наприклад, збереженої процедури або функції, без створення тимчасової таблиці або багатьох параметрів.

Параметри, що мають значення таблиці, схожі на масиви параметрів у OLE DB та ODBC, але пропонують більшу гнучкість та більш тісну інтеграцію з Transact-SQL. Параметри, що оцінюються за допомогою таблиці, також мають перевагу можливості брати участь в операціях на основі наборів.

Transact-SQL передає табличні параметри в підпрограми за посиланням, щоб уникнути копіювання вхідних даних. Ви можете створювати та виконувати підпрограми Transact-SQL із значеннями табличних параметрів і викликати їх із коду Transact-SQL, керованих та власних клієнтів будь-якою керованою мовою.

У цій темі:

Переваги

Параметр, що має значення таблиці, масштабується до збереженої процедури, функції або динамічного тексту Transact-SQL, як і інші параметри. Аналогічно, змінна типу таблиці має область дії, як і будь-яка інша локальна змінна, яка створюється за допомогою оператора DECLARE. Ви можете оголосити табличні значення змінних у динамічних операторах Transact-SQL і передати ці змінні як таблично-значущі параметри до збережених процедур та функцій.

Параметри, що мають значення таблиці, пропонують більшу гнучкість і в деяких випадках кращу продуктивність, ніж тимчасові таблиці або інші способи передачі списку параметрів. Параметри, що оцінюються в таблиці, мають такі переваги:

  • Не отримуйте блокування для початкової сукупності даних від клієнта.
  • Надайте просту модель програмування.
  • Дозволяє включити складну ділову логіку в єдину процедуру.
  • Скоротіть зворотні поїздки на сервер.
  • Може мати структуру таблиці різної потужності.
  • Сильно набрані.
  • Дозвольте клієнту вказати порядок сортування та унікальні ключі.
  • Кешуються як тимчасова таблиця при використанні в збереженій процедурі. Починаючи з SQL Server 2012 (11.x), параметри з табличним значенням також кешуються для параметризованих запитів.