Ditt exempel på xml har ingen Pages nod. Detta betyder att när FROM klausulen beräknas, bildas en korskoppling mellan en lista med nollrader och en lista med en rad. Den resulterande produkten har inga rader, så det finns inget SELECT ed, så ingenting är INSERT red.
Om du verkligen vill infoga en rad i BookDetails för varje booksdetail nod i den inkommande xml, bör du göra något liknande
SELECT
ParamValues.PL.value('Pages[1]','int'),
CAST(ParamValues.PLr.value('Description[1]','varchar(max)') AS text)
FROM
@xml.nodes('/booksdetail') as ParamValues(PL)
Det vill säga strimla den inkommande xml-filen till booksdetail noder och dra ut var och en av .value s du vill ha från dessa rader.