someone will take that and then come back saying 'it doesn't do quite what I want'
That can be a slippery slope. I think I try to suggest that they put some effort into it if they're simply coming back for more and show no signs that they've even tried to decipher what's going on. Their attempt to utilize what's been given helps too. However, I find that when I try to get them to put some effort into it, there is always someone here (name withheld) that will provide copious amounts of code over and over, which means the OP learns little if anything at all.
If it smells like homework I ask. If they've come right out and said it's homework I'll provide guidance but I refrain from providing the exact answer (at least I do these days). I don't care if they will never code another db in their life. No one did my homework for me, and by doing so, I think you just feed the mentality that's all too prevalent these days. IMO that is "well, I finally managed to put my phone down so I can do my assignment. Let's see where I can find a posted, complete solution". When we had nothing but libraries with encyclopedias and other such books, we learned how to think and apply focused problem solving, not just repeat what someone gave us. I realize there are people who will provide 'home work' for compensation, but I don't recall being either a provider or recipient of that.
EDIT
There is a well known member who does just that
I wonder if we're thinking of the same person. Pretty sure it's not me.