Code:
UPDATE `tradeskill_recipe` RIGHT JOIN `tradeskill_recipe_entries` ON (tradeskill_recipe.id = recipe_id) RIGHT JOIN items ON (items.id = item_id)
SET price = trivial * 10, nodrop = 1
WHERE componentcount > 0 AND iscontainer = 0 AND price = 0
I've tested the select form of that but nothing else.
That should set the price to trivial value * 10 and allow the item to be traded. I don't think vendors will take a nodrop item, but I could be wrong.