Table-Valued Parameters (SQL Server Native Client)

Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Important

The SQL Server Native Client (often abbreviated SNAC) has been removed from SQL Server 2022 (16.x) and SQL Server Management Studio 19 (SSMS). The SQL Server Native Client (SQLNCLI or SQLNCLI11) and the legacy Microsoft OLE DB Provider for SQL Server (SQLOLEDB) are not recommended for new application development. Switch to the new Microsoft OLE DB Driver (MSOLEDBSQL) for SQL Server or the latest Microsoft ODBC Driver for SQL Server going forward. For SQLNCLI that ships as a component of SQL Server Database Engine (versions 2012 through 2019), see this Support Lifecycle exception.

Table-valued parameters were introduced in SQL Server 2008 (10.0.x), and provide an efficient way to pass multiple rows of data to the server. Table-valued parameters provide functionality similar to parameter arrays, but they offer more flexibility and closer integration with Transact-SQL, and can frequently improve performance. Table-valued parameters can also participate in set-based operations, whereas parameter arrays cannot.

For information about table-valued parameters and ODBC, see Table-Valued Parameters (ODBC).

For information about table-valued parameters and OLE DB, see Table-Valued Parameters (OLE DB).

See Also

SQL Server Native Client Features