Oil works just fine.....AS LONG AS IT'S THERE WHEN YOU NEED IT TO BE.
Oil is a liquid that creeps and moves, and can move right away from where you need it.
I've seen light colored holsters that have been used long term in which the bottom of the holster was darkened from all the oil that leaked out and was absorbed by the leather.
Oils also dry out, evaporate, gum up, and more or less disappear. People are shocked to oil up the gun and when checked weeks later all the oil is gone away or gone bad.
The best advantage of grease is that it stays right where you put it, doesn't dry out or evaporate, and won't leak out.
You can apply a good grease and come back literally years later and it's still properly lubricating the action.
I've used Synco Super Lube for years. It's a synthetic, clear-white Teflon grease, also sold as a thick oil.
I've opened up customer guns as long as 10 years after I serviced them to find the Super Lube still there and working.
In a defense gun this is invaluable because you don't have any worries about lack of lube preventing the gun from working when it's really needed.
The biggest argument against grease is that it will "attract dust and sand" and cause stoppages.
Unless you're carrying your gun in a lint filled pocket or wearing it exposed in dust storms, they don't get any dirtier then an oiled gun.