Table-Valued Parameters (OLE DB)

THIS TOPIC APPLIES TO: yesSQL ServeryesAzure SQL DatabaseyesAzure SQL Data Warehouse yesParallel Data Warehouse

This section describes support for table-valued parameters in SQL Server Native Client OLE DB Provider. For additional overview information, see Table-Valued Parameters (SQL Server Native Client). For a sample, see Use Table-Valued Parameters (OLE DB).


Currently, you can send multirow data to the server as parameters to a procedure with parameter sets (the DBPARAMS parameter in ICommand::Execute). With parameter sets, every element of the set has to be sent in a separate remote procedure call (RPC) request to the server. Table-valued parameters provide similar functionality, but there is better integration with the server. This reduces the number of RPC requests and enables set-based operations on the server.

Table-value parameters are supported in SQL Server Native Client OLE DB Provider as OLE DB Rowset objects. Any Rowset object could be provided by the consumer (that is, the client application using SQL Server Native Client OLE DB Provider) as a placeholder for table-valued parameter parameters. Table-valued parameters are treated like other SQL Server parameter types. The SQL Server Native Client OLE DB Provider provides creation, discovery, specification, binding and schema interfaces.

In This Section

See Also

SQL Server Native Client (OLE DB)
Use Table-Valued Parameters (OLE DB)