Programmers always ask which is better and which should they choose. Is store procedure has better performance or inlinesql with ORM is better at gaining productivity? Well depends who you are, what applications you develop, the answers are very different from person to person.

I use store procedure when I knew the query is complicated which requires multiple joins tables and I knew that i will query it very often, hence using store procedure will make a significant different in performance gains. For example, you run the optimized precompilesql statements. you delegate the computation of data within the sql server and minimize sql query back and forth and also you make your query pretty secured by using SP

Meanwhile using inlinesql is not a good practise unless you are using Object Relational Mapping (ORM) tools to generate those inlinesql for you and all you need is to use the objects created. It is the fastest and simple way to query and manipulate the database with the power of OOP. If you are using inlinesql as a short cut way to query data, you gotta becareful and takes various precautions steps to overcome sql injection attacks. Sometimes a string of sql statement hard coded in your program can be a maintenance problem because it is quite difficult to test the validity of sql statement.

FYI, I use SP for complicated queries. I use inlinesql (usually generated by ORM) for simple CRUD to direct display data that do not involve calculations. Query using ORM can be more complicated and requires more resources than using the SP, so just keep things simple and understandable.

I am not bias to one or another, I just want to point out that by using the right technology in your application will have a greater benefit of sticking to one technology. Tool is created for making us easier, if you found that the tool is great, just use it, otherwise get another alternative.