Table Valued parameters are user defined table types and used to pass multiple rows of data as input to procedure or function.
Benefits
* we dont need many parameters
* we dont need temporary tables
* We dont need XML to pass multiple values
* pass multiple values of different data types
* Enable client to specify sort order
and unique keys
* SQL 2012 onwards table valued parameters
are cached for all
queries.