Some pharmacy chains seem to have that policy only in certain stores. I could drive to my nearest Walgreens, say I needed insulin needles of a certain kind, they take my card, I take the needles, and we're done. No ID or prescription required.
But at the Walgreens nearest to DD1, in a rather seedy part of Baltimore, they tell me that I have to buy my insulin from them before they will sell me needles. I explain that this is for my cat and that because cats can't use human insulin, I have to buy it from my vet. Because I did buy Willow's first box of needles with a prescription, I know that she is in their system. I ask them to look in their computer for Willow's records, but the clerk is adamant. No insulin, no needles. She claims that this is how all of their pharmacies work, and have for years.
So okay, Walgreens doesn't want my business anymore. I came home, went to Walmart instead, and walked out with a box of needles, no questions asked -- and CHEAPER than Walgreens.