Compiled and cached by the database (assuming you use them properly and bind your parameters).
Are compliant with the MVC paradigm as no logic is in the database.
Don’t tie you in to a particular database vendor (assuming you write portable SQL).
Compiled and cached by the database.
Break MVC as they move some of your application logic into the database.
Do tie you in to a particular database vendor (this in my opinion is the real reason Oracle etc tell you to use them).
Clearly, I am a fan of Prepared Statements and I don’t like Stored Procedures.
The only people I know who rave about Stored Procedures are clueless consultants and people selling databases.
So, given that the above is all the knowledge I have on them, I want to know if there actually are reasons I should use them.
Or to put it another way, am I missing something?