Firstly, I understand the role of Primary Keys on tables in SQL, or any database for that matter.
However, when it comes to user-defined table types, I find myself unable to see why I should create a Primary Key. In my experience I've found no performance benefit from them, but I suspect my findings maybe come from my general usage of them and limited experience, rather than a more experienced view-point.
For example, I generally use table-valued parameters for insert / update procedures, or to pass an array of values used in a creating a select query. I've found no performance benefit from them and if anything I've experienced a small performance drop (but we're talking 10's of milliseconds at the most so its pretty negligible).
I should disclose that any data passed within them has already been cleaned / ordered with great care, so it is possible I'm not seeing benefit due to this but I have no way of easily knowing.
The question again therefore is, should I have a primary key on my user-defined table types or is it just not that important?
Apologies if this is a duplicate. I did a fair amount of searching, but then I could be using wrong combination of keywords.
Your insights as ever will be greatly appreciated.